Генерация изображения с помощью модели Stable Diffusion
В DataSphere вы можете развернуть нейросеть на основе модели Stable Diffusion и генерировать изображения по их текстовому описанию.
Stable Diffusion
В этом руководстве вы сгенерируете изображение по текстовому описанию с помощью реализации модели Stable Diffusion в библиотеке Diffusers
Чтобы сгенерировать изображение с помощью модели Stable Diffusion:
Если созданные ресурсы вам больше не нужны, удалите их.
Перед началом работы
Перед началом работы нужно зарегистрироваться в Yandex Cloud, настроить сообщество и привязать к нему платежный аккаунт:
- На главной странице DataSphere- Выберите организацию Yandex Identity Hub, в которой вы будете работать в Yandex Cloud.
- Создайте сообщество.
- Привяжите платежный аккаунт к сообществу DataSphere, в котором вы будете работать. Убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе ACTIVEилиTRIAL_ACTIVE. Если платежного аккаунта нет, создайте его в интерфейсе DataSphere.
Примечание
Если вы работаете с Yandex Cloud через федерацию удостоверений, вам может быть недоступна платежная информация. В этом случае обратитесь к администратору вашей организации в Yandex Cloud.
Необходимые платные ресурсы
В стоимость использования модели входит плата за запуск ячеек с кодом (см. тарифы DataSphere).
Подготовьте инфраструктуру
Создайте проект
- Откройте главную страницу- На панели слева выберите - Выберите сообщество, в котором вы хотите создать проект.
- На странице сообщества нажмите кнопку - В открывшемся окне укажите имя Stable Diffusionи (опционально) описание проекта.
- Нажмите кнопку Создать.
Создайте ноутбук и установите библиотеки
Примечание
В этом практическом руководстве все вычисления выполняются на конфигурации g1.1, однако модель может быть запущена и на других конфигурациях.
- 
В интерфейсе DataSphere откройте созданный проект. 
- 
Создайте новый ноутбук: - На верхней панели в окне проекта нажмите File → New → Notebook.
- В открывшемся окне выберите ядро DataSphere Kernel.
 
- 
Установите библиотеку Diffusers %pip install diffusers
- 
Установите библиотеку Transformers %pip install transformers
- 
После завершения установки на верхней панели выберите Kernel ⟶ Restart kernel... 
Создайте модель и сгенерируйте изображение
- 
Импортируйте в проект библиотеки: from diffusers import StableDiffusionPipeline import torch
- 
Создайте модель: model_id = "runwayml/stable-diffusion-v1-5" pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16) pipe = pipe.to("cuda")
- 
Сгенерируйте изображение по его описанию: prompt = "a photo of an astronaut riding a horse on mars" image = pipe(prompt).images[0]
- 
Сохраните полученное изображение: image.save("astronaut_rides_horse.png")Файл изображения появится рядом с ноутбуком. Результат:  
Как удалить созданные ресурсы
Если вы больше не планируете работать с проектом Stable Diffusion, удалите его.