Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Foundation Models
    • Начало работы с YandexGPT
    • Начало работы с YandexART
  • Yandex Cloud ML SDK
  • Совместимость с OpenAI
  • Управление доступом
  • Правила тарификации
  • Публичные материалы
  • История изменений

В этой статье:

  • Перед началом работы
  • Сгенерируйте изображение
  1. Начало работы
  2. Начало работы с YandexART

Как начать работать с YandexART

Статья создана
Yandex Cloud
Обновлена 26 марта 2025 г.
  • Перед началом работы
  • Сгенерируйте изображение

В этом разделе вы научитесь использовать нейросеть YandexART для генерации изображений.

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

Перед началом работыПеред началом работы

Чтобы начать работать в Yandex Cloud:

  1. Войдите в консоль управления. Если вы еще не зарегистрированы, перейдите в консоль управления и следуйте инструкциям.
  2. В сервисе Yandex Cloud Billing убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его.
  3. Если у вас еще нет каталога, создайте его.
Консоль управления
SDK
API

Для работы из консоли управления подготовительные действия не требуются.

Чтобы воспользоваться примерами запросов с использованием SDK:

  1. Создайте сервисный аккаунт и назначьте ему роль ai.imageGeneration.user.

  2. Получите и сохраните API-ключ сервисного аккаунта.

    В примерах используется аутентификация с помощью API-ключа. Yandex Cloud ML SDK также поддерживает аутентификацию с помощью IAM-токена и OAuth-токена. Подробнее см. в разделе Аутентификация в Yandex Cloud ML SDK.

  3. С помощью менеджера пакетов pip установите библиотеку ML SDK:

    pip install yandex-cloud-ml-sdk
    

Чтобы воспользоваться примерами запросов через API, установите:

  • cURL для отправки API-запросов;
  • утилиту jq для работы с файлами JSON.

Для работы с API YandexART необходимо аутентифицироваться со своего аккаунта:

  1. Получите IAM-токен для аккаунта на Яндексе или федеративного аккаунта.

  2. Получите идентификатор каталога, на который у вашего аккаунта есть роль ai.imageGeneration.user или выше. Идентификатор каталога понадобится, чтобы получить URI модели.

  3. При обращении к YandexART через API в заголовке Authorization каждого запроса указывайте IAM-токен;

    x-folder-id: <идентификатор_каталога>
    

Другие способы аутентификации в API описаны на странице Аутентификация в API Yandex Foundation Models.

Сгенерируйте изображениеСгенерируйте изображение

Примечание

Чтобы повышать качество генерируемых ответов, YandexART логирует промты пользователей. Не передавайте в запросах чувствительную информацию и персональные данные.

Консоль управления
SDK
API
  1. В консоли управления выберите каталог, на который у вашего аккаунта есть роль ai.imageGeneration.user или выше.
  2. В списке сервисов выберите Foundation Models.
  3. На панели слева выберите YandexART.
  4. В поле ввода опишите изображение, которое вы хотите сгенерировать. Старайтесь использовать яркие образы, описывайте детали, указывайте стили, если хотите получить изображение определенного вида.
  5. Параметр Зерно оставьте случайным или укажите любое значение.
  6. Нажмите кнопку Сгенерировать. Генерация изображения займет некоторое время. Ответ отобразится в левой части экрана.

Код в примере дожидается выполнения моделью запроса, затем сохраняет результат в переменную result с последующим сохранением полученного изображения на диск в файл image.jpeg в текущей директории. Дополнительные способы взаимодействия с моделью YandexART см. в разделе Сгенерировать изображение с помощью YandexART.

  1. Создайте файл generate-image.py и добавьте в него следующий код:

    #!/usr/bin/env python3
    
    from __future__ import annotations
    import pathlib
    from yandex_cloud_ml_sdk import YCloudML
    
    message = "узор из цветных пастельных суккулентов разных сортов, hd full wallpaper, четкий фокус, множество сложных деталей, глубина кадра, вид сверху"
    
    
    def main():
        sdk = YCloudML(
            folder_id="<идентификатор_каталога>",
            auth="<API-ключ>",
        )
    
        model = sdk.models.image_generation("yandex-art")
    
        # configuring model
        model = model.configure(width_ratio=2, height_ratio=1, seed=1863)
    
        path = pathlib.Path("./image.jpeg")
        operation = model.run_deferred(message)
        result = operation.wait()
        path.write_bytes(result.image_bytes)
    
    
    if __name__ == "__main__":
        main()
    

    Где:

    • message — переменная, значение которой содержит текст запроса на генерацию изображения.

      В качестве входных данных для запроса Yandex Cloud ML SDK может принимать строку, словарь, объект класса TextMessage или массив, содержащий любое сочетание указанных типов данных. Подробнее см. в разделе Использование Yandex Cloud ML SDK.

    • <идентификатор_каталога> — идентификатор каталога, в котором создан сервисный аккаунт.

    • <API-ключ> — API-ключ сервисного аккаунта, полученный ранее и необходимый для аутентификации в API.

      В примерах используется аутентификация с помощью API-ключа. Yandex Cloud ML SDK также поддерживает аутентификацию с помощью IAM-токена и OAuth-токена. Подробнее см. в разделе Аутентификация в Yandex Cloud ML SDK.

    Подробнее о том, как обращаться к модели, см. в разделе Обращение к модели.

  2. Выполните созданный файл:

    python3 generate-image.py
    

    Результат:

    succulent

  1. Создайте файл с телом запроса (например, prompt.json):

    {
    "modelUri": "art://<идентификатор_каталога>/yandex-art/latest",
    "generationOptions": {
      "seed": "1863",
      "aspectRatio": {
         "widthRatio": "2",
         "heightRatio": "1"
       }
    },
    "messages": [
      {
        "weight": "1",
        "text": "узор из цветных пастельных суккулентов разных сортов, hd full wallpaper, четкий фокус, множество сложных деталей, глубина кадра, вид сверху"
      }
    ]
    }
    

    Где:

    • modelUri — идентификатор модели YandexART, содержащий идентификатор каталога Yandex Cloud.
    • seed — зерно генерации.
    • text — текстовое описание изображения, на основе которого будет происходить генерация.
    • weight — вес текстового описания. Если в запросе присутствует больше одного описания, влияние каждого описания будет рассчитываться на основе веса, при этом сумма всех весов будет равна 1.
    • aspectRatio — (опционально) соотношение сторон генерируемого изображения:
      • widthRatio — ширина (по умолчанию 1).
      • heightRatio — высота (по умолчанию 1).
  2. Отправьте запрос нейросети с помощью метода ImageGenerationAsync.generate, выполнив команду:

    curl \
      --request POST \
      --header "Authorization: Bearer <значение_IAM-токена>" \
      --data "@prompt.json" \
      "https://llm.api.cloud.yandex.net/foundationModels/v1/imageGenerationAsync"
    

    Где:

    • <значение_IAM-токена> — IAM-токен, полученный для вашего аккаунта.
    • prompt.json — файл в формате JSON, содержащий параметры запроса.

    В ответе сервис вернет идентификатор вашего запроса:

    {
    "id":"fbveu1sntj**********","description":"","createdAt":null,"createdBy":"","modifiedAt":null,"done":false,"metadata":null}
    
  3. Генерация изображения занимает некоторое время. Подождите 10 секунд и отправьте запрос, чтобы получить результат генерации. Если изображение готово, результат вернется в кодировке Base64 и будет записан в файл image.jpeg.

    curl \
      --request GET \
      --header "Authorization: Bearer <значение_IAM-токена>" \
      https://llm.api.cloud.yandex.net:443/operations/<идентификатор_запроса> | \
      jq -r '.response | .image' | base64 -d > image.jpeg
    

    Где:

    • <значение_IAM-токена> — IAM-токен, полученный перед началом работы.
    • <идентификатор_запроса> — значение поля id, полученное в ответе на запрос генерации.

    Результат:

    succulent

Что дальшеЧто дальше

  • Узнайте подробнее о сервисе
  • Прочитайте про способы аутентификации в API

Была ли статья полезна?

Предыдущая
Начало работы с YandexGPT
Следующая
Все инструкции
Проект Яндекса
© 2025 ООО «Яндекс.Облако»