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

# Guia rápido da GPT Image API: gere imagens com CometAPI

> Gere uma imagem GPT por meio da CometAPI, decodifique `b64_json` e salve o resultado com curl, Python ou Node.js.

## O que você vai criar

Você fará uma chamada para `POST /v1/images/generations`, gerará uma imagem com um modelo de imagem GPT, decodificará o `b64_json` retornado e a salvará como um arquivo de imagem.

## Pré-requisitos

* Uma chave de API da CometAPI armazenada em `COMETAPI_KEY`
* Python 3.10+ ou Node.js 18+ para os exemplos de salvamento de arquivo
* Um ambiente server-side. Não chame a geração de imagens a partir de código frontend público com uma chave secreta.

## Chave de API, URL base, autenticação

Use o endpoint de imagem compatível com OpenAI:

```text theme={null}
https://api.cometapi.com/v1/images/generations
```

Autentique com um token Bearer:

```text theme={null}
Authorization: Bearer $COMETAPI_KEY
```

## Exemplos de código

Use as abas abaixo para exemplos copiáveis em cURL, Python e Node.js.

<CodeGroup>
  ```bash cURL theme={null}
  curl https://api.cometapi.com/v1/images/generations \
    -H "Authorization: Bearer $COMETAPI_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "model": "gpt-image-2",
      "prompt": "A paper boat floating on calm water at sunrise.",
      "quality": "low",
      "size": "1024x1024",
      "output_format": "jpeg"
    }'
  ```

  ```python Python theme={null}
  import base64
  import os
  from openai import OpenAI

  client = OpenAI(
      api_key=os.environ["COMETAPI_KEY"],
      base_url="https://api.cometapi.com/v1",
  )

  image = client.images.generate(
      model="gpt-image-2",
      prompt="A paper boat floating on calm water at sunrise.",
      quality="low",
      size="1024x1024",
      output_format="jpeg",
  )

  image_base64 = image.data[0].b64_json
  with open("cometapi-gpt-image.jpeg", "wb") as file:
      file.write(base64.b64decode(image_base64))
  ```

  ```javascript Node.js theme={null}
  import fs from "node:fs/promises";
  import OpenAI from "openai";

  const client = new OpenAI({
    apiKey: process.env.COMETAPI_KEY,
    baseURL: "https://api.cometapi.com/v1",
  });

  const image = await client.images.generate({
    model: "gpt-image-2",
    prompt: "A paper boat floating on calm water at sunrise.",
    quality: "low",
    size: "1024x1024",
    output_format: "jpeg",
  });

  const imageBase64 = image.data[0].b64_json;
  await fs.writeFile("cometapi-gpt-image.jpeg", Buffer.from(imageBase64, "base64"));
  ```
</CodeGroup>

## Explicação do fluxo

A geração de imagens GPT retorna a resposta concluída em uma única solicitação. Os modelos de imagem GPT retornam dados de imagem em base64 em `data[0].b64_json`. Decodifique esse valor e grave os bytes em um arquivo que corresponda a `output_format`.

Se você precisar de saída em URL, verifique se o modelo selecionado oferece suporte a respostas em URL. Os modelos de imagem GPT usam saída em base64 no exemplo de referência mantido.

## Parâmetros comuns

| Parameter       | Use                                                                                    |
| --------------- | -------------------------------------------------------------------------------------- |
| `model`         | model ID do modelo de imagem GPT. O exemplo de referência usa `gpt-image-2`.           |
| `prompt`        | Descrição em texto da imagem a ser gerada.                                             |
| `size`          | Tamanho de saída solicitado. Os valores compatíveis dependem do modelo selecionado.    |
| `quality`       | Configuração de qualidade para modelos que oferecem suporte a isso.                    |
| `output_format` | Tipo de imagem codificada para resultados de imagem GPT, como `jpeg`, `png` ou `webp`. |

## Solução de problemas / FAQ

<AccordionGroup>
  <Accordion title="O arquivo salvo não abre">
    Confirme que você decodificou `b64_json` como bytes em base64 e salvou o arquivo com a extensão correspondente a `output_format`.
  </Accordion>

  <Accordion title="O modelo rejeita um parâmetro">
    Os parâmetros de imagem variam por modelo. Comece com o exemplo mínimo de referência e, em seguida, adicione um campo opcional por vez.
  </Accordion>

  <Accordion title="A resposta não tem URL">
    Use `b64_json` para modelos de imagem GPT. A saída em URL é específica do modelo.
  </Accordion>
</AccordionGroup>

## Próximos passos

* Leia a [referência da API Create image](/api/image/openai/images).
* Encontre os model IDs de imagem em [Models](/pt/overview/models).
* Estime o custo da solicitação com [Estimate request cost before calling a model](/pt/guides/how-to-estimate-cost-before-calling-a-model).
* Lide com falhas com [Códigos de erro e estratégia de retry](/pt/guides/error-codes-and-retry-strategy).
