> ## Documentation Index
> Fetch the complete documentation index at: https://docs.jiekou.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Seedream

Los parámetros y el uso están alineados con la documentación oficial; para parámetros detallados, consulte directamente la documentación oficial.

## 1. Descripción general

La API de generación de imágenes Seedream utiliza un formato de solicitud de generación de imágenes al estilo OpenAI, compatible con generación de texto a imagen, generación de imagen a imagen y edición de imágenes. Los cuatro modelos utilizan la misma interfaz; el cliente solo necesita seleccionar el modelo en el campo `model` del body de la solicitud.

### Modelos compatibles

| ID de modelo del cliente       | Modelo            | Modo de salida                         |
| ------------------------------ | ----------------- | -------------------------------------- |
| `seedream-4-0-250828`          | Seedream 4.0      | Imagen única o serie de imágenes       |
| `seedream-4-5-251128`          | Seedream 4.5      | Imagen única o serie de imágenes       |
| `seedream-5-0-260128`          | Seedream 5.0 Lite | Imagen única o serie de imágenes       |
| `dola-seedream-5-0-pro-260628` | Seedream 5.0 Pro  | Imagen única o descomposición en capas |

## 2. Interfaz y autenticación

```http theme={null}
POST https://{api_domain}/v3/bytedance/api/v3/images/generations
```

Encabezados de la solicitud:

```http theme={null}
Authorization: Bearer <YOUR_API_KEY>
Content-Type: application/json
```

`{api_domain}` corresponde al dominio de la API de su plataforma. La solicitud debe usar POST y el body debe ser JSON.

## 3. Parámetros de la solicitud

### 3.1 Parámetros generales

<ParamField body="model" type="string" required={true}>
  Use el ID de modelo de la tabla anterior.
</ParamField>

<ParamField body="prompt" type="string" required={true}>
  Descripción de la imagen; admite chino e inglés.
</ParamField>

<ParamField body="image" type="string / string[]">
  URL de la imagen de referencia o Data URL en Base64. Puede enviar una sola imagen o un array. La cantidad y las restricciones de imágenes están sujetas a los límites del modelo seleccionado.
</ParamField>

<ParamField body="size" type="string">
  Use los niveles de resolución compatibles con el modelo o `anchoxalto`. Si no se proporciona, se usa el valor predeterminado del modelo.
</ParamField>

<ParamField body="response_format" type="string">
  `url` o `b64_json`; por defecto `url`.
</ParamField>

<ParamField body="output_format" type="string">
  Solo compatible con Seedream 5.0 Lite y 5.0 Pro: `jpeg` o `png`. Seedream 4.0 y 4.5 generan siempre salida en JPEG; si se envía `output_format`, la solicitud será rechazada.
</ParamField>

<ParamField body="watermark" type="boolean">
  Si se añade una marca de agua de generación por IA.
</ParamField>

<ParamField body="stream" type="boolean">
  La interfaz de imágenes no admite salida en streaming; no envíe `true`.
</ParamField>

### 3.2 Parámetros específicos del modelo

| Parámetro                             | Modelos que lo admiten | Descripción                                                                                                                                                                                                                                                                                               |
| ------------------------------------- | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sequential_image_generation`         | 4.0, 4.5, 5.0 Lite     | Interruptor de generación de series de imágenes. Cuando necesite series de imágenes, complételo según el protocolo upstream del modelo correspondiente; omita si no usa series de imágenes.                                                                                                               |
| `sequential_image_generation_options` | 4.0, 4.5, 5.0 Lite     | Opciones de generación de series de imágenes, se usan junto con `sequential_image_generation`.                                                                                                                                                                                                            |
| Niveles 1K, 1.5K y 2K de `size`       | 5.0 Pro                | Pro admite estos niveles y también un `anchoxalto` explícito. Pro no admite parámetros de series de imágenes. En el escenario de descomposición en capas, solo se admiten niveles (incluido auto) y se activa mediante `layer_decomposition: true` (consulte Restricciones del modelo para más detalles). |

Seedream 5.0 Pro no admite `sequential_image_generation` ni `sequential_image_generation_options`; el envío de cualquiera de estos campos será rechazado. No envíe a Pro los parámetros específicos de los demás modelos.

### 3.3 Ejemplo de texto a imagen

La siguiente solicitud toma Seedream 5.0 Pro como ejemplo. Los cuatro modelos comparten la misma interfaz; al usar Seedream 4.0 o 4.5 debe eliminar `output_format`, y este campo solo puede enviarse al usar Seedream 5.0 Lite/Pro:

```bash theme={null}
curl -sS -X POST "https://{api_domain}/v3/bytedance/api/v3/images/generations" \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "dola-seedream-5-0-pro-260628",
    "prompt": "Un golden retriever con una bufanda roja, bajo la luz natural junto a un lago en montañas nevadas, fotografía cinematográfica",
    "size": "2K",
    "response_format": "url",
    "output_format": "jpeg",
    "watermark": true
  }'
```

### 3.4 Ejemplo de imagen a imagen

`image` puede ser una URL individual, un Data URL en Base64 individual o un array de cadenas:

```json theme={null}
{
  "model": "seedream-4-5-251128",
  "prompt": "Coloque a la persona y la ropa de la imagen de referencia en una escena urbana nocturna unificada, manteniendo las características de la persona consistentes",
  "image": [
    "https://example.com/person.png",
    "https://example.com/outfit.png"
  ],
  "size": "2560x1440",
  "response_format": "url"
}
```

### 3.5 Ejemplo de serie de imágenes (solo 4.0, 4.5 y 5.0 Lite)

Los parámetros de series de imágenes pertenecen a los tres primeros modelos. Ejemplo:

```json theme={null}
{
  "model": "seedream-5-0-260128",
  "prompt": "Genere tres carteles de las cuatro estaciones con un estilo unificado",
  "sequential_image_generation": "auto",
  "sequential_image_generation_options": {
    "max_images": 3
  },
  "response_format": "url"
}
```

Consulte el protocolo upstream del modelo seleccionado para confirmar los valores disponibles y los límites de cantidad de los parámetros de series de imágenes.

## 4. Respuesta

Ejemplo de respuesta exitosa:

```json theme={null}
{
  "created": 1786000000,
  "model": "seedream-4-5-251128",
  "data": [
    {
      "url": "https://example.com/generated-image.jpeg",
      "size": "2560x1440",
      "output_format": "jpeg"
    }
  ],
  "usage": {
    "generated_images": 1,
    "input_images": 0
  }
}
```

* Cuando `response_format=url`, se devuelve `data[].url`; cuando `response_format=b64_json`, se devuelve `data[].b64_json`.
* Seedream 4.0, 4.5 y 5.0 Lite pueden devolver varios elementos `data` en modo de serie de imágenes.
* Seedream 5.0 Pro devuelve un elemento `data` en el escenario de generación de imágenes; al activar la descomposición en capas, devuelve varios elementos `data` (una imagen base + varias capas), y cada elemento incluye adicionalmente el orden de apilamiento de capas `z_index` (la imagen base es 0), el nombre `name`, la descripción `description` y el cuadro delimitador `bounding_box` (con coordenadas absolute / normalized; la imagen base no devuelve este campo).
* `model` devuelve el ID de modelo del cliente utilizado en esta solicitud.
* La validez de la URL de la imagen está determinada por la plataforma y el servicio upstream; descargue y guarde las imágenes oportunamente después de recibirlas.

## 5. Restricciones del modelo

### Seedream 4.0 / 4.5 / 5.0 Lite

* Compatible con generación de texto a imagen, generación de imagen a imagen y generación de series de imágenes.
* Las series de imágenes utilizan `sequential_image_generation` y sus campos de opciones.
* El número de imágenes de entrada, el tamaño de las imágenes, la resolución y la relación de aspecto se rigen por la documentación upstream del modelo correspondiente. Seedream 4.0 y 4.5 generan siempre salida en JPEG y no admiten el parámetro de solicitud `output_format`; Seedream 5.0 Lite admite `jpeg` y `png`.

### Seedream 5.0 Pro

* Compatible con generación de texto a imagen, generación a partir de una sola imagen y fusión de múltiples imágenes.
* En el escenario de generación de imágenes, devuelve una imagen exitosa. Al activar la descomposición en capas (`layer_decomposition: true`), devuelve una imagen base y varias capas (hasta 16 capas), en cuyo caso `data` contiene varios elementos. No admite la generación de series de imágenes (`sequential_image_generation`).
* No admite `sequential_image_generation` ni `sequential_image_generation_options`.
* `size` puede usar 1K, 1.5K, 2K o un `anchoxalto` explícito.
* Al especificar el ancho y el alto de forma explícita, la relación de aspecto y el total de píxeles deben cumplir las restricciones del modelo; las dimensiones reales de la imagen de salida se rigen por `data[].size` en la respuesta.
* Compatible con la descomposición en capas: al configurar `layer_decomposition: true`, se descompone una única imagen de entrada en una imagen base y hasta 16 capas editables de forma independiente (cada capa es un PNG con canal alfa). En este escenario, `image` es obligatorio y solo puede contener una imagen; si se envían varias, se produce un error. La descomposición en capas es de tipo "todo o nada": si cualquier capa falla, toda la solicitud falla; no se admite el éxito parcial.
* Reglas de `size` para la descomposición en capas: la resolución de la imagen base es igual a `size`; la resolución de cada capa es cercana a `size`, pero cada capa mantiene la relación de aspecto de su región correspondiente en la imagen original, por lo que los píxeles reales de cada capa difieren. Esto significa que las imágenes de salida de una misma solicitud pueden caer en diferentes niveles de precio por píxeles. `size` puede ser 1K, 1.5K, 2K o auto; por defecto es auto.

## 6. Facturación y uso

* 4.0, 4.5 y 5.0 Lite se facturan según la cantidad de imágenes generadas exitosamente; en la generación de series de imágenes, se calcula según la cantidad de salidas realmente exitosas.
* 5.0 Pro se factura según las imágenes de salida exitosas; con múltiples imágenes de entrada, la primera imagen de referencia es gratuita y las imágenes de referencia adicionales se miden por separado; los diferentes tamaños de salida corresponden a distintos niveles de precio. Al activar la descomposición en capas, la imagen base y cada capa cuentan como una imagen de salida exitosa, y cada una se factura por separado según el nivel de precio correspondiente a los píxeles de su `data[].size` (por ejemplo, la imagen base en el nivel de alta resolución y algunas capas en el nivel de baja resolución); la factura final es la suma de las cantidades de cada nivel.
* La unidad de uso es "imagen" o item.

## 7. Solución de problemas

| Escenario                                   | Recomendación                                                                                       |
| ------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| Modelo no compatible                        | Compruebe que `model` coincida exactamente con la tabla anterior.                                   |
| Falta el prompt                             | El body debe contener un prompt no vacío.                                                           |
| No se puede leer la imagen                  | Compruebe la accesibilidad, el formato, el tamaño y los límites de píxeles de la URL.               |
| `stream=true`                               | La interfaz de imágenes no admite salida en streaming; elimine este campo o configúrelo en `false`. |
| Campos de series de imágenes enviados a Pro | Elimine los dos campos `sequential_image_generation*`.                                              |
| `size` no válido                            | Use un nivel admitido por el modelo seleccionado o un `anchoxalto` que cumpla las restricciones.    |
