Поделиться через


Использование моделей создания образов Azure OpenAI

Модели создания изображений OpenAI отображают изображения на основе текстовых запросов, предоставленных пользователем, и при необходимости предоставленных изображений. В этом руководстве показано, как использовать модели создания изображений и настраивать их параметры с помощью вызовов REST API.

Предпосылки

Вызов API создания изображений

В следующей команде показан самый простой способ использования модели изображений с кодом. Если вы впервые используете эти модели программным способом, рекомендуем начать с краткого руководства.

Отправьте запрос POST в:

https://<your_resource_name>.openai.azure.com/openai/deployments/<your_deployment_name>/images/generations?api-version=<api_version>

URL-адрес:

Замените следующие значения:

  • <your_resource_name> — имя ресурса Azure OpenAI.
  • <your_deployment_name> — это имя развертывания модели DALL-E 3 или GPT-image-1.
  • <api_version> — это версия API, которую вы хотите использовать. Например: 2025-04-01-preview.

Обязательные заголовки:

  • Content-Type: application/json
  • api-key: <your_API_key>

тело:

Ниже приведен пример текста запроса. Вы указываете ряд параметров, определенных в последующих разделах.

{
    "prompt": "A multi-colored umbrella on the beach, disposable camera",
    "model": "gpt-image-1",
    "size": "1024x1024", 
    "n": 1,
    "quality": "high"
}

Подсказка

Информацию о стоимости генерации изображений см. в разделе «Токены изображения».

Выходные данные

Ответ от успешного вызова API создания изображений выглядит следующим образом. Поле url содержит URL-адрес, в котором можно скачать созданный образ. URL-адрес остается активным в течение 24 часов.

{ 
    "created": 1698116662, 
    "data": [ 
        { 
            "url": "<URL_to_generated_image>",
            "revised_prompt": "<prompt_that_was_used>" 
        }
    ]
} 

Отклонение вызова API

Запросы и изображения фильтруются на основе нашей политики содержимого, возвращая ошибку при помечении запроса или изображения.

Если ваш запрос помечен, error.code для сообщения задано contentFilterзначение . Ниже приведен пример:

{
    "created": 1698435368,
    "error":
    {
        "code": "contentFilter",
        "message": "Your task failed as a result of our safety system."
    }
}

Кроме того, возможно, что созданный образ фильтруется. В этом случае сообщение об ошибке установлено на созданный образ, отфильтрованный в результате нашей системы безопасности. Ниже приведен пример:

{
    "created": 1698435368,
    "error":
    {
        "code": "contentFilter",
        "message": "Generated image was filtered as a result of our safety system."
    }
}

Создание подсказок для генерации изображений из текста

Запросы должны описать содержимое, которое вы хотите увидеть на изображении, и визуальный стиль изображения.

При написании запросов следует учитывать, что API изображений имеют фильтр модерации содержимого. Если служба распознает запрос как вредное содержимое, он не создает образ. Дополнительные сведения см. в разделе "Фильтрация содержимого".

Подсказка

Подробные сведения о том, как можно настроить текстовые запросы на создание различных типов изображений, см. в руководстве по проектированию запросов изображений.

Указание параметров API

Для моделей создания изображений доступны следующие параметры текста API.

Размер

Укажите размер созданных изображений. Должен быть одним из 1024x1024, 1024x1536 или 1536x1024 для моделей GPT-image-1. Квадратные изображения быстрее создаются.

Качество

Существует три варианта качества изображения: low, mediumи high. Более низкое качество изображений можно создавать быстрее.

Значение по умолчанию — high.

Номер

Вы можете создавать между одним и 10 изображениями в одном вызове API. Значение по умолчанию — 1.

Идентификатор пользователя

Используйте параметр пользователя , чтобы указать уникальный идентификатор для пользователя, выполняющего запрос. Это полезно для отслеживания и мониторинга шаблонов использования. Значение может быть любой строкой, например идентификатором пользователя или адресом электронной почты.

Формат вывода

Используйте параметр output_format , чтобы указать формат созданного изображения. Поддерживаемые форматы: PNG и JPEG. Значение по умолчанию — PNG.

Замечание

Образы WEBP не поддерживаются в Azure OpenAI в моделях Azure AI Foundry.

Сжатие

Используйте параметр output_compression , чтобы указать уровень сжатия для созданного образа. Введите целое число между 0 и 100, где 0 означает отсутствие сжатия, а 100 означает максимальное сжатие. Значение по умолчанию — 100.

Вызов API редактирования изображений

API редактирования изображений позволяет изменять существующие изображения на основе предоставленных текстовых запросов. Вызов API аналогичен вызову API создания изображений, но также необходимо предоставить входной образ.

Это важно

Входное изображение должно быть меньше 20 МБ в размере и должно быть PNG-файлом или JPG.

Отправьте запрос POST в:

https://<your_resource_name>.openai.azure.com/openai/deployments/<your_deployment_name>/images/edits?api-version=<api_version>

URL-адрес:

Замените следующие значения:

  • <your_resource_name> — имя ресурса Azure OpenAI.
  • <your_deployment_name> — это имя развертывания модели DALL-E 3 или GPT-image-1.
  • <api_version> — это версия API, которую вы хотите использовать. Например: 2025-04-01-preview.

Обязательные заголовки:

  • Content-Type: multipart/form-data
  • api-key: <your_API_key>

тело:

Ниже приведен пример текста запроса. Вы указываете ряд параметров, определенных в последующих разделах.

Это важно

API редактирования изображений принимает данные с несколькими частями и формами, а не данные JSON. В приведенном ниже примере показаны примеры данных формы, которые будут присоединены к запросу cURL.

-F "image[][email protected]" \
-F 'prompt=Add a beach ball in the center' \
-F "model=gpt-image-1" \
-F "size=1024x1024" \
-F "n=1" \
-F "quality=high"

Выходные данные

Ответ от успешного вызова API редактирования изображений выглядит следующим образом. Поле b64_json содержит выходные данные изображения.

{ 
    "created": 1698116662, 
    "data": [ 
        { 
            "b64_json": "<base64 image data>",
            "revised_prompt": "<prompt_that_was_used>" 
        }
    ]
} 

Указание параметров API

Следующие параметры текста API доступны для моделей редактирования изображений, а также для моделей создания изображений.

Изображение

Значение изображения указывает файл изображения, который требуется изменить.

Маска

Параметр маски совпадает с типом основного входного параметра изображения . Он определяет область изображения, которую модель должна изменить, используя полностью прозрачные пиксели с альфа-каналом, равным нулю в этих областях. Маска должна быть PNG-файлом и иметь те же размеры, что и входное изображение.