reload_flag=""
if [[ -n "${DEBUG}" ]]; then
reload_flag="--reload"
fi
if [[ -n "${WORKER_COUNT}" ]]; then
workers=${WORKER_COUNT}
else
workers=2
fi
gunicorn --workers ${workers} \
--bind 0.0.0.0:8000 \
${reload_flag} main.wsgi
Писали такие конструкции чтобы проверить наличие флага и сформировать команду правильно?
На самом деле можно сделать тоже самое проще. Для этого используются операторы условной подстановки, доступные в оболочках семейства POSIX.
:- для установки значений по умолчанию
${WORKER_COUNT:-2}
Если переменная не объявлена, то будет дефолтное значение 2.
:+ подставляет указанный текст, если переменная не пуста
${DEBUG:+--reload}
Если что-то есть в переменной то распечатается текст после символа +, в противном случае - ничего. Удобно для опциональных флагов, как в нашем примере.
Итого наш скрипт может выглядеть так:
gunicorn --workers ${WORKER_COUNT:-2} \
--bind 0.0.0.0:8000 \
${DEBUG:+--reload} main.wsgi
Есть еще два оператора.
:= не только подставить дефолтное значение, но и присвоить его переменной, если она пуста
# никаких переменных еще нет
VAL1=${VAL2:=hello}
# теперь доступны обе
echo $VAL1 $VAL2
# hello hello
:? остановить выполнение с ошибкой, если переменной нет.
echo ${MISS:?is required}
bash: MISS: is required
Код выхода будет 1.
#tricks#linux
Помнишь нейросеть Reve, которая отлично отрабатывала русскую эстетику — медведи, балалайки, хрущёвки, панельки? Так вот, они выкатили апдейт. Возможно, это очередной потенциальный соперник «бананы», но пока утверждать не берусь — нужно тестить.
Видео выглядит эффектно и явно скрывает интересные фишки. Видно, что есть механики с выделением, что-то в духе draw-to-edit. Если придумают реально инновационный подход — не постесняюсь стянуть себе в приложение, ха-ха.
Плюс обещают API, а если проект «выиграет гонку редактирующих нейронок», то можно будет интегрировать и в собственный софт. В целом — очень любопытная история.
👉reve.art
😂 Тестим, показываем результаты в комментах, ты мне реально помогаешь этим! Чем больше тестов тем четче вывод по нейронке на канале)🖖
#reve | AcidCrunch
🖼 Rеve — это про то, когда уже ничего нового не ждёшь от генерации изображений, а оно всё равно удивляет.
Немного о волшебстве под капотом (наблюдения частично проверены нами, частично коллегами):
🟤 Ослабленная цензура — Rеve пока не боится крови, жути и даже девушек в нижнем белье. 😂 А вот совсем топлес — не-а. За слова не ругает, но картинки выдаёт в размытии, либо совсем "плоско".
🟤 Советская эстетика и "наш вайб" — чутко ощущает атмосферу ДК, панелек, гаражей и дачного трэша.
🟤 Фотореализм и эмоции — типажи нестандартные, позы естественные и живые, группы персонажей не сливаются в одно лицо, эстетика замечательная. Иногда путается с пальцами и глазами, и это окей.
🟤 Знаменитости, бренды и логотипы — узнаёт, рисует, молодец!
Бесплатные баллы на генерации прилетают каждый день, а если затянет — есть подписка по вменяемой цене.
👍 Картинки немного детализировали в Leonardo.
#reve#leonardo
🧐 Провела эксперимент:
«Нейрогенерации за 5 минут»
🔅1️⃣ Идём в ⚛️ChatGPT и пишем ему это задание:
Привет! Помоги придумать 10 промтов для тестирования разных нейросетей по созданию изображений.
⚜️ Требования к промтам:
1️⃣ Каждый промт должен быть подробным и цельным описанием сцены в стиле визуального сторителлинга.
2️⃣ Включать:
🔘 персонажа (человек, внешний вид, эмоции, одежда, бренд),
🔘 окружение и атмосферу (локация, детали фона, время суток, погодные условия),
🔘 угол съёмки, композицию, тип камеры, объектив или плёнку,
🔘 свет (тип освещения, цветовая палитра),
🔘 художественные эффекты (grain, lens flare, bokeh и т.п., если уместно).
3️⃣ Каждый из 10 промтов должен содержать уникальные параметры (разные ракурсы, локации, свет, стиль одежды и бренды, атмосферу и пр.).
4️⃣ Все промты в эстетике fashion и lifestyle, с упором на фотореализм и ощущение настоящей фотографии (никакой иллюстрации, 3D, анимации и пр.).
5️⃣ Структура промта: единый художественный абзац, без списков, но с полной детализацией сцены.
🤖 Задача: придумай 10 таких промтов с уникальными параметрами, чтобы я мог использовать их для теста нейросетей вроде: Midjourney, FLUX, Imagen 4, Reve, Sora. Каждый промт пиши на двух языках: русском и английском.
🔅2️⃣ Берём полученные промты и пробиваем их по очереди в любимой нейросети.
Для поста я выбрала Reve (дополнительно можно включить функцию улучшенной доработки промта).
🔅3️⃣ Скачиваем картинки и выкладываем пост в Telegram-канал.
🎉 Всё! Вы восхитительны!
Собираем лайки, восторженные комментарии и продаём курсы: "Как генерировать за секунду и зарабатывать миллионы с нейорсетями"
🫢
А если серьёзно — это классное упражнение, чтобы прокачать насмотренность: учиться прописывать разные ракурсы, типажи, настройки камеры и композиционные решения (см. пункт 2 шага 1).
☝️ Все генерации — с первой попытки и без доработок.
Бесплатных кредитов Reve хватило на 2 круга промтов от ChatGPT — это 20 разноплановых картинок.
🔅🔅🔅🔅🔅🔅
⭐️👍💚🔖💬⏳
#практикаИИ#chatgpt#reve