Перейти к содержанию
Вся документация

Справочник

POST /v1/images/generations

Делайте картинки из текстового промпта в формате OpenAI: метод images.generate из SDK работает, если поменять только базовый URL. Картинки приходят в ответе, а копию мы не храним.

Проверено 6 ноября 2026 г.

Сделайте картинку

import base64
import os
from openai import OpenAI

client = OpenAI(
    base_url="https://nokeep.ai/v1",
    api_key=os.environ["NOKEEP_API_KEY"],
)

result = client.images.generate(
    model="z-image-turbo",
    prompt="A lighthouse on a rocky coast at dusk",
    size="1024x1024",
)

with open("picture.webp", "wb") as f:
    f.write(base64.b64decode(result.data[0].b64_json))

Модели

МодельПодходит дляЗа картинкуРазмерСамый длинный промпт
chromaОткрытая модель, которая читает длинные подробные промпты.$0.03До 1280 пикселей по стороне, отдаётся в 1,5x7 500 символов
z-image-turboСамая быстрая здесь, для фотографий в большом объёме.$0.03До 1280 пикселей по стороне7 500 символов
wai-illustriousАниме и иллюстрации.$0.03До 1280 пикселей по стороне1 500 символов
krea-2-turboДержит известных персонажей и фирменный стиль, в 1K или 2K.$0.08 (1K), $0.12 (2K)1:1, 3:2, 16:9, 21:9, 9:16, 2:3, 3:4, 4:55 000 символов

GET /v1/models показывает те же цены и лимиты.

Запрос

ПолеПринимаетЧто делает
modelОбязательноОдин из идентификаторов моделей выше.
promptОбязательноЧто нарисовать, передаётся модели как написано. Длиннее лимита модели — отказ, промпт никогда не обрезается.
sizeWIDTHxHEIGHT или autoРазмер картинки. По умолчанию 1024x1024. См. Размеры.
aspect_ratio1:1, 3:2, 2:3, 4:3, 3:4, 4:5, 16:9, 9:16, 21:9Пропорции вместо size. Если отправлены оба, выигрывает она.
nОт 1 до 4Сколько картинок. Оплачиваете те, что вернулись.
response_formatb64_json или urlПо умолчанию b64_json. url возвращает data:-URL, а не ссылку на сохранённый файл.
output_formatwebp, png или jpegПо умолчанию webp.
resolution1K или 2KТолько для krea-2-turbo, и цена зависит от него.
seedЦелое числоОдин и тот же seed и промпт дают похожую картинку. При n каждая картинка прибавляет к нему единицу.
negative_promptТекстЧего не должно быть. Проверкой жёстких ограничений не читается, и не каждая модель его учитывает.
stepsОт 1 до 50Больше шагов — дольше. Не каждая модель их использует.
cfg_scaleБольше 0, до 20Насколько точно следовать промпту. Не каждая модель его использует.

Любое другое поле, например quality, style или user, отбрасывается и называется в заголовке x-nokeep-ignored. Поле, которое несёт картинку, например image, отклоняется с 400 unsupported_input: эти модели работают только с текстом.

Размеры

  • Сторона может быть не меньше 256 пикселей, а длинная сторона — не больше чем втрое длиннее короткой. Вне этого диапазона — 400 unsupported_size.
  • Больший размер вписывается в 1280 пикселей по стороне с сохранением пропорций. Например, 1536x1024 из OpenAI рисуется как 1280x848.
  • chroma отдаёт в 1,5 раза больше пикселей, чем рисует, без доплаты: 1024x1024 приходит как 1536x1536.
  • krea-2-turbo рисует по именованным форматам, поэтому size превращается в ближайший.
  • size или aspect_ratio в ответе всегда говорит, что вы получили.

Ответ

JSON
{
  "created": 1793960000,
  "data": [
    {
      "b64_json": "UklGRk…"
    }
  ],
  "model": "z-image-turbo",
  "output_format": "webp",
  "size": "1024x1024",
  "usage": {
    "images": 1,
    "nokeep_credits": 30
  }
}

Заголовки x-nokeep-credits и x-nokeep-balance говорят, сколько стоил вызов и сколько осталось, как и в чате. Картинка оплачивается, когда она приходит. Неудачная или отказанная ничего не стоит.

Что создают модели

Взрослый контент входит в рамки на моделях, которые хост помечает как без цензуры. z-image-turbo к ним не относится и в наших проверках сдерживал себя сильнее всех, поэтому может вернуть картинку мягче, чем вы просили.

Четыре жёстких ограничения остаются: сексуальный контент с участием несовершеннолетних, сексуальный контент о реальных людях, вред массового поражения и нападение на реального человека. Промпт, который их переступает, получает 422 hard_limit и ничего не стоит. Проверка читает промпт; см. Жёсткие ограничения. Хост модели тоже может отказать в запросе или придержать результат: это 422 content_refused, тоже бесплатно.

Лимиты и ошибки

Ключ может сделать 60 запросов картинок в минуту, в пределах своих 120 запросов в целом. Сверх этого — 429 rate_limited с Retry-After. На странице ошибок перечислены все коды.

Чтобы проверить код, ничего не тратя, отправьте sk-nokeep-test как ключ. Он проходит все проверки выше и отвечает картинкой в один пиксель.

curl
curl https://nokeep.ai/v1/images/generations \
  -H "Authorization: Bearer $NOKEEP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "chroma",
  "prompt": "A lighthouse on a rocky coast at dusk",
  "n": 2,
  "aspect_ratio": "16:9",
  "output_format": "png",
  "seed": 42
}'