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

# Szybki start GPT Image API: generowanie obrazów z CometAPI

> Wygeneruj obraz GPT przez CometAPI, zdekoduj `b64_json` i zapisz wynik za pomocą curl, Python lub Node.js.

## Co zbudujesz

Wywołasz `POST /v1/images/generations`, wygenerujesz jeden obraz za pomocą modelu obrazów GPT, zdekodujesz zwrócone `b64_json` i zapiszesz je jako plik obrazu.

## Wymagania wstępne

* Klucz API CometAPI zapisany w `COMETAPI_KEY`
* Python 3.10+ lub Node.js 18+ do przykładów zapisywania plików
* Środowisko po stronie serwera. Nie wywołuj generowania obrazów z publicznego kodu frontendowego przy użyciu sekretnego klucza.

## Klucz API, base URL, uwierzytelnianie

Użyj zgodnego z OpenAI endpointu obrazów:

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

Uwierzytelnij się za pomocą tokenu Bearer:

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

## Przykłady kodu

Użyj poniższych zakładek, aby skopiować przykłady w cURL, Python i 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>

## Wyjaśnienie przepływu

Generowanie obrazów GPT zwraca ukończoną odpowiedź w jednym żądaniu. Modele obrazów GPT zwracają dane obrazu zakodowane w base64 w `data[0].b64_json`. Zdekoduj tę wartość i zapisz bajty do pliku zgodnego z `output_format`.

Jeśli potrzebujesz wyniku w postaci URL, sprawdź, czy wybrany model obsługuje odpowiedzi URL. Modele obrazów GPT używają wyjścia base64 w utrzymywanym przykładzie referencyjnym.

## Typowe parametry

| Parametr        | Zastosowanie                                                                      |
| --------------- | --------------------------------------------------------------------------------- |
| `model`         | model ID obrazu GPT. Przykład referencyjny używa `gpt-image-2`.                   |
| `prompt`        | Tekstowy opis obrazu do wygenerowania.                                            |
| `size`          | Żądany rozmiar wyjściowy. Obsługiwane wartości zależą od wybranego modelu.        |
| `quality`       | Ustawienie jakości dla modeli, które je obsługują.                                |
| `output_format` | Typ zakodowanego obrazu dla wyników GPT image, taki jak `jpeg`, `png` lub `webp`. |

## Rozwiązywanie problemów / FAQ

<AccordionGroup>
  <Accordion title="Zapisany plik się nie otwiera">
    Upewnij się, że zdekodowano `b64_json` jako bajty base64 i zapisano plik z rozszerzeniem zgodnym z `output_format`.
  </Accordion>

  <Accordion title="Model odrzuca parametr">
    Parametry obrazów różnią się w zależności od modelu. Zacznij od minimalnego przykładu referencyjnego, a następnie dodawaj po jednym polu opcjonalnym.
  </Accordion>

  <Accordion title="Odpowiedź nie zawiera URL">
    Użyj `b64_json` dla modeli obrazów GPT. Wynik w postaci URL zależy od modelu.
  </Accordion>
</AccordionGroup>

## Następne kroki

* Przeczytaj [dokumentację API Create image](/api/image/openai/images).
* Znajdź model ID modeli obrazów w sekcji [Models](/pl/overview/models).
* Oszacuj koszt żądania za pomocą [Estimate request cost before calling a model](/pl/guides/how-to-estimate-cost-before-calling-a-model).
* Obsługuj błędy, korzystając z [Error codes and retry strategy](/pl/guides/error-codes-and-retry-strategy).
