Генерация изображений
Выбор модели, формат ответа, генерация и проверка поддержки редактирования.
Выберите доступную модель изображений в каталоге. Среди опубликованных вариантов есть gpt-image-1.5 и chatgpt-image-latest; актуальный список и протокол проверяйте в кабинете.
Генерация
Раздел «Генерация»Для OpenAI-совместимого варианта используется POST /v1/images/generations с Bearer-ключом. Укажите точный model и prompt, затем минимально необходимый набор параметров.
Результат может содержать URL или данные Base64; обрабатывайте фактические поля ответа. URL может иметь ограниченный срок действия. Не выводите большие Base64-строки в журналы.
Редактирование и ограничения
Раздел «Редактирование и ограничения»Редактирование и загрузка исходного файла зависят от модели и конечной точки. Не предполагайте, что любой вариант генерации также поддерживает редактирование, произвольный размер, качество, количество и формат ответа. При 400 уберите необязательные параметры и добавляйте их по одному.
Тариф может зависеть от изображения, запроса, токенов и других показанных условий модели. Не переносите цену текстовой модели на изображения. Проверьте использование и списание в журнале после первого теста.
Примеры запросов и конфигурации
Раздел «Примеры запросов и конфигурации»Используйте пример для выбранного протокола и версии клиента. Замените учебные ключи и идентификаторы моделей своими. Команды выполняются на вашем компьютере или сервере.
import base64import osfrom pathlib import Pathfrom openai import OpenAI
client = OpenAI( api_key=os.environ["ONEZHE_API_KEY"], base_url="https://1zheai.com/v1", timeout=300.0, max_retries=0,)result = client.images.generate( model=os.environ.get("ONEZHE_IMAGE_MODEL", "gpt-image-1.5"), prompt="Белая керамическая чашка на светло-сером столе, мягкий естественный свет, без текста.",)if not result.data: raise RuntimeError("В ответе нет изображения. Проверьте ошибку и журнал запросов.")item = result.data[0]if item.b64_json: target = Path("generated-image.png") target.write_bytes(base64.b64decode(item.b64_json, validate=True)) print(f"Изображение сохранено в {target.resolve()}")elif item.url: print("Получен URL изображения. Скачайте его своевременно:", item.url)else: raise RuntimeError("В ответе нет b64_json или url.")