> ## 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

## 1. Visão geral

A API de geração de imagens Seedream usa um formato de requisição de geração de imagens no estilo OpenAI e suporta geração a partir de texto, geração a partir de imagem e edição de imagens. Os quatro modelos usam o mesmo endpoint; o cliente só precisa escolher o modelo no campo `model` do corpo da requisição.

### Modelos suportados

| ID do modelo no cliente        | Modelo            | Modo de saída                           |
| ------------------------------ | ----------------- | --------------------------------------- |
| `seedream-4-0-250828`          | Seedream 4.0      | Imagem única ou conjunto de imagens     |
| `seedream-4-5-251128`          | Seedream 4.5      | Imagem única ou conjunto de imagens     |
| `seedream-5-0-260128`          | Seedream 5.0 Lite | Imagem única ou conjunto de imagens     |
| `dola-seedream-5-0-pro-260628` | Seedream 5.0 Pro  | Imagem única ou decomposição em camadas |

## 2. Endpoint e autenticação

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

Cabeçalhos da requisição:

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

`{api_domain}` deve ser substituído pelo domínio da API da sua plataforma. A requisição deve usar POST e o corpo deve ser JSON.

## 3. Parâmetros da requisição

### 3.1 Parâmetros gerais

<ParamField body="model" type="string" required={true}>
  Use o ID do modelo da tabela acima.
</ParamField>

<ParamField body="prompt" type="string" required={true}>
  Descrição da imagem; suporta chinês e inglês.
</ParamField>

<ParamField body="image" type="string / string[]">
  URL da imagem de referência ou Data URL em Base64. Aceita uma única imagem ou um array. A quantidade e as restrições de imagem seguem os limites do modelo selecionado.
</ParamField>

<ParamField body="size" type="string">
  Use uma das faixas de resolução suportadas pelo modelo ou um `larguraxaltura` explícito. Se não for enviado, será usado o valor padrão do modelo.
</ParamField>

<ParamField body="response_format" type="string">
  `url` ou `b64_json`; o padrão é `url`.
</ParamField>

<ParamField body="output_format" type="string">
  Suportado apenas por Seedream 5.0 Lite e 5.0 Pro: `jpeg` ou `png`. Seedream 4.0 e 4.5 geram saída fixa em JPEG; se `output_format` for enviado, a requisição será rejeitada.
</ParamField>

<ParamField body="watermark" type="boolean">
  Se deve adicionar a marca d’água de geração por IA.
</ParamField>

<ParamField body="stream" type="boolean">
  O endpoint de imagens não suporta saída em streaming; não envie `true`.
</ParamField>

### 3.2 Parâmetros específicos do modelo

| Parâmetro                             | Modelos aplicáveis | Descrição                                                                                                                                                                                                                                                                                                 |
| ------------------------------------- | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sequential_image_generation`         | 4.0, 4.5, 5.0 Lite | Chave de ativação da geração de conjunto de imagens. Quando precisar de conjuntos de imagens, preencha conforme o protocolo upstream do modelo correspondente; omita quando não for usar conjuntos de imagens.                                                                                            |
| `sequential_image_generation_options` | 4.0, 4.5, 5.0 Lite | Opções de geração de conjunto de imagens, usadas junto com `sequential_image_generation`.                                                                                                                                                                                                                 |
| Faixas 1K, 1.5K e 2K de `size`        | 5.0 Pro            | O Pro suporta essas faixas e também `larguraxaltura` explícito. O Pro não suporta parâmetros de conjunto de imagens. No cenário de decomposição em camadas, apenas faixas são suportadas (incluindo auto) e são ativadas com `layer_decomposition: true` (consulte Limitações dos modelos para detalhes). |

O Seedream 5.0 Pro não suporta `sequential_image_generation` e `sequential_image_generation_options`; o envio de qualquer um desses campos será rejeitado. Não envie ao Pro os parâmetros exclusivos dos outros modelos.

### 3.3 Exemplo de geração a partir de texto

A requisição abaixo usa o Seedream 5.0 Pro como exemplo. Os quatro modelos compartilham o mesmo endpoint; ao usar Seedream 4.0 ou 4.5, é obrigatório remover `output_format` — esse campo só pode ser enviado ao 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": "Um golden retriever com um lenço vermelho, sob a luz natural à beira de um lago nevado, fotografia cinematográfica",
    "size": "2K",
    "response_format": "url",
    "output_format": "jpeg",
    "watermark": true
  }'
```

### 3.4 Exemplo de geração a partir de imagem

`image` pode ser uma única URL, um único Data URL em Base64 ou um array de strings:

```json theme={null}
{
  "model": "seedream-4-5-251128",
  "prompt": "Coloque a pessoa e as roupas da imagem de referência em uma mesma cena noturna urbana, mantendo as características da pessoa consistentes",
  "image": [
    "https://example.com/person.png",
    "https://example.com/outfit.png"
  ],
  "size": "2560x1440",
  "response_format": "url"
}
```

### 3.5 Exemplo de conjunto de imagens (apenas 4.0, 4.5 e 5.0 Lite)

Os parâmetros de conjunto de imagens pertencem aos três primeiros modelos. Exemplo:

```json theme={null}
{
  "model": "seedream-5-0-260128",
  "prompt": "Gere três pôsteres das quatro estações com um estilo unificado",
  "sequential_image_generation": "auto",
  "sequential_image_generation_options": {
    "max_images": 3
  },
  "response_format": "url"
}
```

Consulte o protocolo upstream do modelo selecionado para confirmar os valores disponíveis e os limites de quantidade dos parâmetros de conjunto de imagens.

## 4. Resposta

Exemplo de resposta bem-sucedida:

```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
  }
}
```

* Quando `response_format=url`, retorna `data[].url`; quando `response_format=b64_json`, retorna `data[].b64_json`.
* Seedream 4.0, 4.5 e 5.0 Lite podem retornar múltiplos itens em `data` no modo de conjunto de imagens.
* Seedream 5.0 Pro retorna um item em `data` no cenário de geração de imagem; com a decomposição em camadas ativada, retorna múltiplos itens em `data` (uma imagem base + várias camadas), cada um incluindo adicionalmente a ordem de empilhamento das camadas `z_index` (0 para a imagem base), o nome `name`, a descrição `description` e a caixa delimitadora `bounding_box` (com coordenadas absolute / normalized; a imagem base não retorna esse campo).
* `model` retorna o ID do modelo do cliente usado nesta requisição.
* A validade da URL da imagem é determinada pela plataforma e pelos serviços upstream; baixe e salve as imagens imediatamente após o retorno.

## 5. Limitações dos modelos

### Seedream 4.0 / 4.5 / 5.0 Lite

* Suporta geração a partir de texto, geração a partir de imagem e geração de conjuntos de imagens.
* Conjuntos de imagens usam `sequential_image_generation` e seus campos de opções.
* A quantidade de imagens de entrada, o tamanho, a resolução e a proporção das imagens seguem a documentação upstream do modelo correspondente. Seedream 4.0 e 4.5 geram saída fixa em JPEG e não suportam o parâmetro de requisição `output_format`; Seedream 5.0 Lite suporta `jpeg` e `png`.

### Seedream 5.0 Pro

* Suporta geração a partir de texto, geração a partir de uma única imagem e fusão de múltiplas imagens.
* No cenário de geração de imagem, retorna uma imagem bem-sucedida. Com a decomposição em camadas ativada (`layer_decomposition: true`), retorna uma imagem base e várias camadas (até 16 camadas), caso em que `data` contém múltiplos itens. Não suporta geração de conjunto de imagens (`sequential_image_generation`).
* Não suporta `sequential_image_generation` e `sequential_image_generation_options`.
* `size` aceita 1K, 1.5K, 2K ou `larguraxaltura` explícito.
* Ao especificar largura e altura explicitamente, a proporção e o total de pixels devem atender às limitações do modelo; as dimensões reais da imagem de saída seguem `data[].size` na resposta.
* Suporta decomposição em camadas: ao definir `layer_decomposition: true`, uma única imagem de entrada é decomposta em uma imagem base e até 16 camadas editáveis independentemente (cada camada é um PNG com canal alpha). Nesse cenário, `image` é obrigatório e só pode conter uma imagem; enviar várias resulta em erro. A decomposição em camadas é tudo ou nada: se qualquer camada falhar, toda a requisição falha; sucesso parcial não é suportado.
* Regras de `size` na decomposição em camadas: a resolução da imagem base é igual a `size`; a resolução de cada camada fica próxima de `size`, mas cada camada mantém a proporção da região correspondente na imagem original, por isso os pixels reais de cada camada diferem. Isso significa que as imagens de saída de uma mesma requisição podem cair em faixas de preço por pixel diferentes. `size` aceita 1K, 1.5K, 2K e auto, com auto como padrão.

## 6. Cobrança e uso

* 4.0, 4.5 e 5.0 Lite são cobrados pelo número de imagens geradas com sucesso; na geração de conjuntos de imagens, a cobrança considera a quantidade realmente gerada com sucesso.
* 5.0 Pro é cobrado pelas imagens de saída bem-sucedidas; com múltiplas imagens de entrada, a primeira imagem de referência é gratuita e as imagens de referência adicionais são medidas separadamente; tamanhos de saída diferentes correspondem a faixas de preço diferentes. Com a decomposição em camadas ativada, a imagem base e cada camada contam como uma imagem de saída bem-sucedida, cada uma faturada separadamente na faixa de preço correspondente aos pixels do seu `data[].size` (por exemplo, a imagem base em uma faixa de alta resolução e algumas camadas em faixas de baixa resolução); a fatura final é a soma das quantidades de cada faixa.
* A unidade de uso é “imagem” ou item.
* Os preços específicos devem ser confirmados na página de preços do produto da sua plataforma.

## 7. Solução de problemas

| Cenário                                       | Recomendação                                                                                 |
| --------------------------------------------- | -------------------------------------------------------------------------------------------- |
| Modelo não suportado                          | Verifique se `model` corresponde exatamente à tabela acima.                                  |
| prompt ausente                                | O corpo deve conter um prompt não vazio.                                                     |
| Imagem ilegível                               | Verifique a acessibilidade, o formato, o tamanho e os limites de pixels da URL.              |
| `stream=true`                                 | O endpoint de imagens não suporta saída em streaming; remova o campo ou defina como `false`. |
| Campos de conjunto de imagens enviados ao Pro | Remova os dois campos `sequential_image_generation*`.                                        |
| size inválido                                 | Use uma faixa suportada pelo modelo selecionado ou um `larguraxaltura` dentro dos limites.   |
