Оригинальное ДЗ из LMS
Поэкспериментируйте самостоятельно со Stable Diffusion: создайте минимум 3 текстовых запроса (промптов) разной сложности и тематики и сгенерируйте изображения для каждого запроса. Прикрепите запросы с изображениями в LMS.
Найдите в интернете примеры «промпт-инжиниринга» для Stable Diffusion. Попробуйте применить эти техники для улучшения результатов генерации. Поделитесь самыми интересными или забавными изображениями, которые вам удалось сгенерировать, в общем чате.
Подготовка окружения
# Терминал (Windows PowerShell)
python -m venv venv
venv\Scripts\Activate.ps1
pip install huggingface_hub python-dotenv pillow
pip freeze > requirements.txt
# .env
HF_TOKEN=hf_ваш_токен
Добавьте .env и venv/ в .gitignore. Если используете web-интерфейс вместо Python API, всё равно сдайте промпты, изображения и выводы.
Рекомендуемая структура сдачи
ai-lesson-07/
├── .env # не сдавать публично
├── .gitignore
├── generate_image.py
├── prompts.md # промпты, изменения, выводы
├── generated_image_1.png
├── generated_image_2.png
└── generated_image_3.png
Что написать в prompts.md
- Исходный промпт: что хотели получить.
- Результат: что получилось хорошо, что не совпало.
- Улучшение: какие слова добавили: стиль, свет, композиция, negative prompt.
- Итоговый вывод: какие техники сработали лучше всего.
Каркас генератора
# generate_image.py
import os
from dotenv import load_dotenv
from huggingface_hub import InferenceClient
load_dotenv()
token = os.getenv("HF_TOKEN")
if not token:
raise RuntimeError("Set HF_TOKEN in .env")
client = InferenceClient(provider="fal-ai", api_key=token)
prompts = [
"A calm mountain lake at sunset, realistic photo, soft light",
"A futuristic city with flying cars, neon lights, cinematic concept art",
"A robot teaching Python in a cozy classroom, watercolor illustration",
]
for index, prompt in enumerate(prompts, start=1):
image = client.text_to_image(prompt, model="black-forest-labs/FLUX.1-dev")
filename = f"generated_image_{index}.png"
image.save(filename)
print(filename, prompt)
Проверка в VS Code
- Терминал:
python generate_image.py. - Проверьте, что PNG-файлы появились в папке проекта.
- Если API вернул ошибку доступа/лимита, замените модель или провайдера по документации Hugging Face.
- В отчёте укажите, какая модель/сервис использовались.
Критерии самопроверки
- Есть минимум 3 промпта разной сложности и тематики.
- Для каждого промпта есть изображение или скриншот результата.
- Есть хотя бы одна итерация улучшения промпта.
- Выводы не только «понравилось/не понравилось», а про соответствие промпту, стиль, артефакты и ограничения.