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 de cuadro 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 entradas de texto e imagen y produce imágenes. Puede generar una escena nueva, usar 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 ilustración, 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 versiones posteriores de GPT Image.
Prepara instrucciones que indiquen el sujeto, el entorno, la composición, la iluminación y el estilo visual. Si la tarea necesita texto visible, incluye la redacción exacta y explica su jerarquía y posición previstas. Para una composición con referencias, asigna 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 de uno a diez resultados de imagen. Compara las variaciones devueltas frente a las mismas instrucciones y conserva 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 low y high, con low como valor predeterminado. Este control afecta al esfuerzo por conservar las características 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 de origen, pero no garantiza que cada detalle identificable permanezca idéntico. Indica qué debe conservarse y qué puede cambiar en lugar de depender únicamente del ajuste de fidelidad.
La edición con máscara identifica un área que se quiere modificar. Prepara el origen y la máscara con el mismo formato y dimensiones, por debajo de 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. Unas instrucciones de edición útiles pueden pedir un color de pared distinto conservando los muebles, el ángulo de cámara y la iluminación. El modelo usa la máscara como guía en lugar de prometer un límite exacto, así que inspecciona tanto el área modificada como sus alrededores.
Los tamaños de salida estándar documentados son 1024 × 1024, 1536 × 1024 y 1024 × 1536 píxeles, con selección automática de tamaño cuando es compatible. La calidad es low, medium, high o auto. GPT Image 1 utiliza estos cuadros estándar y niveles de calidad hasta high. Elige el cuadro estándar según la visualización prevista y el nivel de detalle según el propósito del recurso.
PNG es la salida predeterminada, con alternativas JPEG y WebP. JPEG y WebP permiten compresión de 0 a 100. Las opciones de fondo transparente, opaco y automático atienden distintas necesidades de entrega; la transparencia requiere PNG o WebP. Para un gráfico aislado, usa un formato que conserve su canal alfa antes de colocarlo en un diseño posterior. Para una escena completa, incluye el fondo y la relación del sujeto con él en las instrucciones.
OpenAI documenta la generación y edición directas, y la ficha del modelo también incluye el uso conversacional de imágenes. Para trabajo iterativo, conserva el resultado elegido como origen de un cambio posterior en lugar de escoger implícitamente una variación distinta. La referencia de imágenes documenta streaming con hasta tres imágenes parciales; estas muestran el progreso en lugar de ser recursos terminados adicionales. Conserva la imagen terminada y las instrucciones juntas para que las ediciones posteriores se refieran a la composición real. La interfaz del fabricante también admite procesamiento por lotes.
El modelo todavía puede tener dificultades con la ubicación precisa del texto, diseños muy estructurados y consistencia entre sujetos recurrentes. Inspecciona las letras, los límites de los objetos, el tratamiento del color y los detalles que identifican el material de origen al tamaño previsto. Si una edición necesita refinamiento, describe la diferencia visible y los elementos que se deben conservar. GPT Image 1 resulta útil para una secuencia concreta de generación, edición guiada por referencias y preparación de recursos, manteniendo sus 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-1Inicio
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 de cuadro 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
- Entrada
text,image- 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} · El task_id real devuelto o el registro de la biblioteca multimedia
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Tarifas
Cómo se calcula el cargo definitivo
Las tarifas mostradas permiten estimar el costo antes de la generación. El cargo final se calcula a partir del costo registrado para la generación original. La duración medida de la salida y las cantidades estimadas no son 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 fast
- Sin especificar Cuando se selecciona el modo fast
- Modo flex
- Sin especificar Cuando se selecciona el modo flex
- Esfuerzo máximo de razonamiento
- Sin especificar Cuando el esfuerzo máximo de razonamiento usa el ajuste 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ónCosto estimado de generación | Tabla de tarifas— | Cantidad previstaestimación para una generación | Cargo Salida · Costo 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 por la generación completada. |
Ailoot reserva un monto 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 los encabezados, 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 reales de task_id/asset_id devueltos o la biblioteca multimedia de tu propiedad; 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