Документация по API генерации изображений
KozeAI предоставляет интерфейсы генерации и редактирования изображений в стиле OpenAI. Интерфейс обработки изображений возвращает единый формат ответа изображения, но размер, качество, эталонное изображение и формат вывода, поддерживаемые конкретной моделью, определяются адаптером канала.
Аутентификация
Все запросы аутентифицируются через Авторизация: Bearer . Используется после создания токена API в консоли.
export KOZEAI_API_KEY='sk-your-token'
export KOZEAI_BASE_URL='https://your-kozeai-domain'
API Обзор
| Метод | Путь | Тип содержимого | Назначение | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| POST | /v1/images/generations |
application/json |
Изображения, сгенерированные текстом | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Параметры | Тип | Обязательный | Описание |
|---|---|---|---|
модель |
строка | Is | Название модели изображения. Фактически доступные модели основаны на результатах из /v1/models. |
запрос |
строка | Да | Описание содержимого изображения. Рекомендуется использовать непустую строку. |
n |
целое число | Нет | Количество сгенерированных элементов, по умолчанию 1, стандартный диапазон проверки — 1-10. |
размер |
строка | Нет | Размер изображения или соотношение сторон, конкретное значение определяется моделью. |
quality |
string | No | Уровень качества, распространенные значения: standard, hd, auto, 2k, 4k. |
response_format |
string | No | Распространенные значения: url или b64_json. |
style |
any | No | Параметр стиля, совместимый с OpenAI. |
user / user_id |
any | No | Идентификатор вызывающего пользователя. |
extra_fields |
object | No | Дополнительный структурированный параметр; Его эффективность зависит от адаптера канала. |
background |
any | No | Настройки фона. |
модерация |
any | No | Настройки модерации контента. |
output_format |
any | No | Формат выходного изображения. |
output_compression |
integer | No | Параметр сжатия выходных данных, поддерживаемый некоторыми моделями изображений Codex. |
partial_images |
integer | No | Некоторые параметры, связанные с изображениями/потоковой передачей, поддерживаемые некоторыми моделями изображений Codex. |
watermark |
boolean | No | Переключатель водяного знака, его эффективность зависит от канала. |
watermark_enabled |
any | No | Совместимо с некоторыми параметрами водяного знака из исходного кода. |
image |
string/object/array | No | Ссылка на URL изображения, URL данных или объект изображения; Некоторые каналы автоматически перейдут в процесс редактирования. |
DALL·E Size and Defaults
| Model | size Allowed Значения |
Значения по умолчанию |
|---|---|---|
dall-e-2 / dall-e |
256x256、512x512、1024x1024 |
1024x1024 |
1024x1024、1024x1792、1792x1024 |
1024x1024 |
|
gpt-image-1 / gpt-image-2 |
Определяется моделью исходного кода | quality=auto |
size Необходимо использовать буквы половинной ширины x, не использовать знаки умножения ×.
2. Редактирование изображений
Стандартные запросы на редактирование используют многокомпонентную форму, в которой поле изображения называется image. Несколько входных изображений можно использовать повторно, используя image или image[].
curl '$KOZEAI_BASE_URL/v1/images/edits' \
-H 'Авторизация: Bearer $KOZEAI_API_KEY' \
-F 'model=gpt-image-1' \
-F 'prompt=Изменить фон на ночной пейзаж и сохранить данные о объекте' \
-F 'image=@./input.png' \
-F 'n=1' \
-F 'quality=standard'
Общая форма Поля:
| Поле | Тип | Описание |
|---|---|---|
модель |
строка | Модель редактирования изображений. |
подсказка |
строка | Требования к редактированию. |
изображение / изображение[] |
файл | Введите изображение, как минимум одно. |
маска |
файл | Изображение маски; В основном используется для рабочих процессов редактирования, совместимых с OpenAI/Codex. |
n |
целое число | Количество сгенерированных элементов, по умолчанию 1, диапазон 1-10. |
размер |
строка | Размер или соотношение выходных данных. |
качество |
строка | Качество выходных данных. |
response_format |
string | url или b64_json, в зависимости от канала. |
watermark |
boolean | Переключатель водяного знака, в зависимости от канала. |
Некоторые каналы также поддерживают запросы на редактирование в формате JSON, например, установку image в URL данных или URL изображения; однако пути редактирования OAuth OpenAI, Codex и ChatGPT предпочтительно используют multipart.
3. Различия каналов
<таблица> <заголовок>размера. размер будет преобразован в соотношение сторон и разрешение; формат ответа по умолчанию равен b64_json. Поддерживаются дополнительные параметры JSON, такие как aspect_ratio и resolution.
size Поддерживает соотношения сторон 1:1, 16:9, 9:16, 4:3 и 3:4; quality=2k/4k запускает процесс масштабирования. Эталонные изображения загружаются через image. size используется для сопоставления соотношений сторон; quality=hd выберет более высокое разрешение; эталонное изображение будет включено в процесс смешивания. input_fidelity, mask, stream, output_format, output_compression, partial_images. model, prompt, n и редактирует изображения; другие параметры изображения могут быть проигнорированы. response_format Поддерживается только url или b64_json, по умолчанию используется url; для запросов на редактирование требуется как минимум одно изображение. Параметры, не определенные в общедоступных полях, не гарантируют автоматическую передачу. Будут действовать только дополнительные параметры, явно считанные соответствующим адаптером канала.
4. Формат ответа
{
"created": 1751000000,
"data": [
{
"url": "https://example.com/generated.png",
"b64_json": "",
"revised_prompt": "Оранжевый кот сидит у окна, кинематографический свет и тень"
}
]
}
Когда `response_format=b64_json`, содержимое изображения находится в `data[].b64_json`; при использовании формата URL адрес изображения находится в `data[].url`. Различные каналы могут возвращать пустые строки для неиспользуемых полей.
5. Пример вызова JavaScript
const baseURL = process.env.KOZEAI_BASE_URL;
const apiKey = process.env.KOZEAI_API_KEY;
const response = await fetch(`${baseURL}/v1/images/generations`, {
method: 'POST',
headers: {
Authorization: `Bearer ${apiKey}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
model: 'gpt-image-1',
prompt: 'Минимальная иллюстрация продукта на белом фоне',
n: 1, size: 1024x1024,
response_format: url,
}),
});
if (!response.ok) {
throw new Error(await response.text());
}
const result = await response.json();
console.log(result.data[0].url || result.data[0].b64_json);
6. Common Errors
model is required: Model name not passed.prompt is required: Prompt word is empty.n must be between 1 and 10: Generation quantity exceeds public limit.size must be one of ...: DALL·E uses an nonsupported size.image is required: The edit interface did not upload an image or provided a recognizable image reference.unsupported ... response_format: Целевой канал не поддерживает запрошенный формат вывода.