OpenAI: GPT Image 1
GPT Image 1 genera y edita imágenes a partir de texto y entradas visuales, incluidas composiciones guiadas por referencias y cambios con máscara. Admite fidelidad de entrada seleccionable, tamaños estándar, fondos transparentes y salida PNG, JPEG o WebP.
Sobre el modelo
Esta descripción cubre las capacidades del modelo. Las entradas, salidas y opciones disponibles en Ailoot se indican a continuación para el método seleccionado.
GPT Image 1 es el modelo de imágenes nativamente multimodal de OpenAI, que acepta texto e imágenes como entrada y produce imágenes como salida. Puede generar una escena nueva, utilizar imágenes de referencia para dar forma a una composición o editar un recurso existente mediante una nueva instrucción. El trabajo práctico incluye ilustraciones, imágenes de producto, conceptos de diseño y cambios locales guiados por una máscara. Esta es la edición denominada GPT Image 1, independiente de Image 1 Mini, Image 1.5 y las versiones posteriores de GPT Image.
Prepare un encargo que indique el sujeto, el entorno, la composición, la iluminación y el estilo visual. Si la tarea necesita texto visible, incluya la redacción exacta y explique su jerarquía y posición previstas. Para una composición con referencias, asigne a cada imagen una función clara, como un producto, un entorno o un tratamiento visual. Los flujos directos de generación y edición permiten un prompt de hasta 32 000 caracteres y entre uno y diez resultados de imagen. Compare las variantes devueltas con el mismo encargo y conserve el recurso elegido para el trabajo posterior.
La edición puede recibir hasta dieciséis imágenes de referencia. GPT Image 1 admite input_fidelity en low y high, con low como valor predeterminado. Este control afecta al esfuerzo por conservar los rasgos y el estilo de la imagen de origen; es independiente de la calidad de renderizado y del tamaño de salida. Una edición de alta fidelidad resulta útil cuando importan los detalles originales, pero no garantiza que cada detalle identificativo permanezca idéntico. Indique lo que debe conservarse y lo que puede cambiar en lugar de confiar únicamente en el ajuste de fidelidad.
La edición con máscara identifica una zona que modificar. Prepare el original y la máscara con el mismo formato y dimensiones, con un tamaño inferior a 50 MB según los requisitos de la guía y con un canal alfa en la máscara. Con varias imágenes de origen, la máscara se aplica a la primera. Un encargo de edición útil puede pedir otro color de pared conservando los muebles, el ángulo de cámara y la iluminación. El modelo utiliza la máscara como orientación en lugar de prometer un límite exacto, por lo que debe inspeccionar tanto la zona cambiada como sus alrededores.
Los tamaños estándar documentados de salida son 1024 × 1024, 1536 × 1024 y 1024 × 1536 píxeles, con selección automática de tamaño cuando se admite. La calidad es low, medium, high o auto. GPT Image 1 utiliza estos formatos estándar y niveles de calidad de hasta high. Elija el formato estándar según la visualización prevista y el nivel de detalle según la finalidad del recurso.
PNG es la salida predeterminada, con JPEG y WebP como alternativas. Para JPEG y WebP hay una compresión de 0 a 100. Las opciones de fondo transparente, opaco y automático cubren diferentes necesidades de entrega; la transparencia requiere PNG o WebP. Para un gráfico aislado, use un formato que conserve su canal alfa antes de colocarlo en una composición posterior. Para una escena completa, incluya en el encargo el fondo y la relación del sujeto con él.
OpenAI documenta la generación y edición directas, y la ficha del modelo también incluye el uso conversacional de imágenes. Para un trabajo iterativo, conserve el resultado elegido como origen para un cambio posterior en lugar de seleccionar implícitamente otra variante. La referencia de imágenes documenta streaming con hasta tres imágenes parciales; estas muestran el progreso y no son recursos terminados adicionales. Mantenga juntos la imagen terminada y el encargo para que las ediciones posteriores se refieran a la composición real. La interfaz del fabricante también admite procesamiento por lotes.
El modelo aún puede tener dificultades con la ubicación precisa del texto, las composiciones muy estructuradas y la coherencia entre sujetos recurrentes. Inspeccione los textos, los límites de los objetos, el tratamiento del color y los detalles que identifican el material original al tamaño previsto. Si una edición necesita refinamiento, describa la discrepancia visible y los elementos que deben conservarse. GPT Image 1 resulta útil para una secuencia concreta de generación, edición guiada por referencias y preparación de recursos, manteniendo sus propios tamaños estándar y su fidelidad de entrada seleccionable diferenciados de otras ediciones.
Ailoot Ultra · Imágenes POST /v1/images/generations openai/gpt-image-1
openai/gpt-image-1Primeros pasos
GPT Image 1 genera y edita imágenes a partir de texto y entradas visuales, incluidas composiciones guiadas por referencias y cambios con máscara. Admite fidelidad de entrada seleccionable, tamaños estándar, fondos transparentes y salida PNG, JPEG o WebP.
- Entradas aceptadas
- Texto · Imágenes
- Resultados
- Imágenes
Disponible en Ailoot · entradas y métodos
Ailoot Ultra · Imágenes POST /v1/images/generations
- Tipos de entrada
text,image- Tipos de salida
image
| Campo | Tipo | Requisito | Valores y límites | Predeterminado |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObligatorio | Valores y límites openai/gpt-image-1 | Predeterminado— |
Campoprompt | Tipostring | RequisitoObligatorio | Valores y límites Longitud mínima: 1 | Predeterminado— |
Campoaspect_ratio | Tipostring | RequisitoOpcional | Valores y límites 1:1, 3:2, 2:3, auto | Predeterminado— |
Campoquality | Tipostring | RequisitoOpcional | Valores y límites auto, low, medium, high | Predeterminado— |
Campobackground | Tipostring | RequisitoOpcional | Valores y límites auto, transparent, opaque | Predeterminado— |
Campon | Tipointeger | RequisitoOpcional | Valores y límites Mínimo: 1 Máximo: 10 | Predeterminado— |
Campoinput_references | Tipoarray | RequisitoOpcional | Valores y límites Número mínimo de elementos: 0 Número máximo de elementos: 16 | Predeterminado— |
Campooutput_compression | Tipointeger | RequisitoOpcional | Valores y límites Mínimo: 0 Máximo: 100 | Predeterminado— |
Campoprovider | Tipoobject | RequisitoOpcional | Valores y límites | Predeterminado— |
Parámetros del método y ciclo de vida
| Parámetro | Contrato |
|---|---|
Parámetrocontent_type | Contratoapplication/json |
Parámetrorequired | Contratomodel, prompt |
Parámetromaterial_types | Contratotext, image |
Ciclo de vida: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · task_id real devuelto o registro de la biblioteca multimedia
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Planes
Cómo se calcula el cargo definitivo
Las tarifas mostradas estiman el coste antes de la generación. El cargo final se calcula a partir del coste registrado para la generación original. La duración medida del resultado y las cantidades previstas no constituyen la cantidad facturable final.
Las referencias tarifarias no añaden opciones a la solicitud. Los parámetros admitidos se indican en el método seleccionado.
- Modo rápido
- Sin especificar Cuando se selecciona el modo rápido
- Modo flex
- Sin especificar Cuando se selecciona el modo flex
- Esfuerzo máximo de razonamiento
- Sin especificar Cuando el esfuerzo máximo de razonamiento utiliza el ajuste predeterminado (default)
Tarifas estimadas para comparar
Precios por configuración
Relaciona cada cargo con las condiciones mostradas. Usa una tarifa para cada conjunto de configuraciones alternativas.
| Configuración | Tabla de tarifas | Cantidad prevista | Cargo |
|---|---|---|---|
| ConfiguraciónTarifas base por token | Tabla de tarifasTarifa base | Cantidad prevista— | Cargo Entrada · Tokens de entrada · Estimación solo para comparar — / 1K tokens Salida · Tokens de salida · Estimación solo para comparar — / 1K tokens Entrada · Lectura de caché · Estimación solo para comparar — / 1K tokens Entrada · Escritura en caché · Estimación solo para comparar — / 1K tokens Entrada · Escritura en caché, 1 hora · Estimación solo para comparar — / 1K tokens |
| ConfiguraciónCoste estimado de generación | Tabla de tarifas— | Cantidad previstaestimación para una generación | Cargo Salida · Coste estimado de generación · Estimación solo para comparar $0.32768 estimación previa a la generación Esta estimación no es un cargo adicional ni una tarifa fija para la generación completada. |
Ailoot reserva un importe estimado antes de la solicitud. Tras obtener el resultado, liquida el cargo definitivo según el uso medido. En las respuestas en flujo, la liquidación usa el registro de uso final. Cómo funcionan la reserva y la liquidación →
Solicitudes de ejemplo
Ailoot Ultra · Imágenes
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'model': 'openai/gpt-image-1', 'prompt': 'a red panda astronaut floating in space, studio lighting'}
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin
def save_images(items):
if not items: raise SystemExit("No completed images; retain the full response")
for index, item in enumerate(items):
encoded=item.get("b64_json")
uri=item.get("url", "")
if not encoded and uri.startswith("data:image/"):
header, separator, encoded=uri.partition(",")
if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
if encoded:
raw=base64.b64decode(encoded,validate=True)
elif uri:
uri=urljoin("https://api.ailoot.ai",uri)
parsed=urlsplit(uri)
if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
raise SystemExit("Invalid returned image URL")
owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
args=["curl","--fail-with-body","--silent","--show-error",uri]
if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
temporary=Path(f"image-{index}.bin")
subprocess.run(args+["-o",str(temporary)],check=True)
raw=temporary.read_bytes()
temporary.unlink()
else: raise SystemExit("Image has neither bytes nor URL")
if not raw: raise SystemExit("Empty image result")
ext="png" if raw.startswith(b"\x89PNG") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "svg" if raw.lstrip().startswith((b"<svg",b"<?xml")) else "bin"
Path(f"image-{index}.{ext}").write_bytes(raw)
print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT
Recibir y guardar resultados
Ailoot Ultra · Imágenes
Descarga cada imagen recibida o guarda su contenido Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Otras consultas de contenido
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Conserva todos los resultados completados
Guarda todas las imágenes completadas; descarga cada URL recibida o decodifica su contenido Base64.
Conserva la respuesta completa y las cabeceras, todas las salidas reales, los identificadores originales devueltos y todos los campos de uso. Recupera la operación original sin volver a enviar la solicitud de creación.
Si es necesario revisar la respuesta original
Conserva el X-Client-Request-ID devuelto para la conciliación. Consulta únicamente los valores task_id/asset_id realmente devueltos o la biblioteca multimedia propia; nunca construyas una URL de tarea a partir del ID de la operación ni vuelvas a enviar la solicitud de creación.
Campos de respuesta
| Campo | Tipo |
|---|---|
Campocreated | Tipo |
Campodata[].url | Tipo |
Campodata[].b64_json | Tipo |
Campousage | Tipo |
Alias
Alias del modelo
Ailoot Ultra openai/gpt-image-1
Alias de rutas de métodos
/v1/images
ID de modelo relacionados
FAQ · OpenAI: GPT Image 1
- ¿Qué entradas y resultados están disponibles?
POST /v1/images/generations·openai/gpt-image-1:text,image→image- ¿Qué campos utiliza la solicitud?
POST /v1/images/generations·openai/gpt-image-1:model,prompt,aspect_ratio,quality,background,n,input_references,output_compression,provider- ¿Qué límites se aplican?
POST /v1/images/generations·openai/gpt-image-1:n.minimum:1;n.maximum:10;output_compression.minimum:0;output_compression.maximum:100