Программный Кодекс
68 subscribers
2K photos
188 videos
2 files
492 links
Авторский канал Григорьева Ивана. Новости ИТ, разработки, личные наблюдения, юмор.
Download Telegram
Не знаю зачем, но вот вам макрос для Excel на VBA, который отображает скрытые именованные диапазоны.

Sub ShowNames()
Dim xName As Name
For Each xName In Application.ActiveWorkbook.Names
xName.Visible = True
Next
End Sub


Кому-то (мне) спасло часы отладки 🙈
😺 Много всяких подарков и сувениров есть в магазине Кота программиста. Он теперь не только на OZON, но и имеет собственный сайт.

https://codercat.store/
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
👍1
Или не джуну )
👍1
Каждый раз ору с этой пикчи, как в новый
👍1
У плохих менеджеров есть любимчики в команде, и это сразу заметно.

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

Кстати, это правило работает еще в школе — хорошие учителя никого явно не выделяют.
На заводе идет проверка.
Приехал большой начальник и наблюдает, как работают люди. И тут он
увидел, что из всей массы очень выделяется один рабочий, который носится
с пустой телегой со "скоростью света" из одного конца в другой.
Тогда этот начальник подходит к нему и начинает его расхваливать:
- Молодец!!!
- Быстро работаешь! Только я не могу в толк взять, почему у тебя тележка
пустая?
- Аааа, это потому что накладывать не успевают, - отвечает рабочий.
Forwarded from Bahamut: Memes&Themes
Гайд по локальной Stable Diffusion

Установка
1. Ставим Python 3.10.6 (именно эту версию) и отмечаем галочкой пункт «Add to PATH».
2. Ставим Git.
3. Либо заходим в командную строку и переходим в папку, куда хотим установить программу, либо переходим в папку в Проводнике, открываем контекстное меню (правой кнопкой мыши по пустому полю внутри папки) и жмем там Git Bash Here или Open in Terminal. Теперь вводим git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui и Git автоматически создаст папку с названием программы и загрузит туда все необходимые файлы.
ИЛИ
3. Если вам очень сложно ввести одну команду в командной строке, то можете скачать архив sd.webui.zip отсюда и распаковать в желаемую папку, после чего запускаем файл update.bat и ждем обновления.

Настройка и запуск
1. Заходим в папку с самой программой(stable-diffusion-webui или webui), находим файл webui-user.bat и открываем его для редактирования. Самый простой способ: правая кнопка мыши по файлу, пункт «Изменить». Ну или откройте вашим любимым текстовым редактором.
2. Находим строчку set COMMANDLINE_ARGS= и добавляем к ней аргументы:
Для средней GeForce с памятью менее 4 гигов: --medvram
Для слабой GeForce: --lowvram
Для запуска только на процессоре: --use-cpu all --no-half --skip-torch-cuda-test
Так же, в случае медленной работы или ошибок при запуске, можете попробовать добавить: --no-half, --no-half-vae, --precision full, --opt-sdp-attention, --xformers
Для установки расширений прямо в программе: --enable-insecure-extension-access
Можно вообще ничего не добавлять и попробовать запустить так.
Лично у меня строка выглядит так:
set COMMANDLINE_ARGS=--xformers --enable-insecure-extension-access
Сохраняем файл.
3. Запускаем файл webui-user.bat и ждем появления строк To create a public link… и Startup time:
В первый раз ждать придется дольше, так как будет качаться дефолтная модель.
4. Открываем в браузере http://localhost:7860/

Наслаждаемся. =)

Терминология
Checkpoint — это целая большая модель, на основе которой и генерируются картинки.
LoRA — это маленькая модель, обученная на каком-то конкретном признаке, которая применяется вместе с большой, внося изменения в результат.
Trigger words — ключевые слова, которые подтягивают признаки из лоры.
Prompt — это запрос в виде ключевых слов, перечисленных через запятую, что мы хотим видеть.
Negative prompt — это тоже запрос в виде ключевых слов, чего мы НЕ хотим видеть.
Sampling steps — количество шагов рисования, чем больше — тем детальнее.
CFG Scale — фантазия нейросети, насколько ей можно отойти от изначального промпта, чем больше — тем бредовее.
Batch size — количество картинок за генерацию.
Batch count — количество генераций подряд.
Seed — последовательность цифр, используемая для генерации изображения. Фиксированный сид даст повторяющиеся результаты.
Inpaint — рисование поверх другой картинки, дополняя/заменяя некоторые области.
Ну и хватит для начала.

Интерфейс
Итак, после открытия страницы мы видим:
Stable Diffusion checkpoint — тут выбираем модель. Стандартную модельку, зафайнтьюненные, XL-версии, что есть.
txt2img — вкладка, непосредственно, рисования.
Prompt — вводим слова и выражения на английском через запятую, для усиления веса ключевого слова его можно взять в круглые скобки (что увеличит его вес на 10%, например (усы)) или же поставить после слова двоеточие и вписать множитель через точку (например: усы:1.3).
Negative prompt — вводим то, чего видеть не хотим, существуют универсальные негативные промпты.
Generation — настройки генерации.
Sampling method — рекомендуют DPM++ 2M Karras, Euler a.
Sampling steps — шагов ставим от 20 до 35 для обычных картинок, от 50 и до 75 для детальных и сколько угодно вообще.
CFG Scale — ставим от 3 до 5 для реализма или точного соответствия желаемому запросу и от 7 до 10 для художественных вещей.
Lora — вкладка с лорами. Тыкаем нужную, ее вес можно так же подредактировать.
img2img — вкладка редактирования изображения.
PNG Info — вкладка, позволяющая увидеть инфу, вшитую в png-файл, например промпт, с которым изображение было создано.
🔥 Основные причины срыва сроков:
- то одно
- то другое
Please open Telegram to view this post
VIEW IN TELEGRAM
Команда или личное развитие?
Anonymous Poll
57%
Команда
43%
Личное развитие
🤮1
Напишите в комментариях, используете ли вы нейросети в жизни и работе? Если да - то какие?
Ну хоть не через постель с тимлидом
👍1
😁1
😁2
Жиза №153

Я тимлид. Со своей нынешней командой выстроил тёплые дружеские отношения. Можем и поиздеваться друг над другом, и подколоть, и назвать как-то по-дурацки. Всем норм, работа идёт в кайф, никто не грузится от официальной атмосферы.

Недавно взяли нового программиста. На онбординге я его предупредил, что общаться можно легко, без всяких «вы» и прочего официоза. Он с радостью это принял, всё отлично. Работаем.

На днях он попросил ему помочь с багом. Я подхожу, смотрю. В первых же строчках кода вижу ошибку. Он исправил. Потом ещё одну, и ещё одну. И я вообще без задней мысли ему говорю: «Ну вот, 3 ошибки в такой простой задаче. Либо завтра приносишь мне бутылку виски, либо увольняю без выплаты зп, ахахах». В шутку сказал, естественно, посмеялся даже, да и по мне видно было, что я это несерьёзно.

Так он на следующий день и правда пришёл ко мне с бутылкой виски и начал извиняться. Что мол так и так, бессонница сейчас беспокоит, спит мало, постарается больше таких ошибок не допускать. Я ему говорю: «Ты чего, дружище, я же пошутил вчера. Всё нормально, со всеми бывает. Ты бы вообще сразу сказал, что от бессонницы страдаешь. Я тебе мяты своей принесу, чай с ней попьёшь и будешь спать как сурок».

А он мне: «Ну вот, выпрашиваешь у подчинённого виски. Либо завтра приносишь мне пучок мяты, либо сдаю тебя гендиру, ахахахах». Быстро парень правила игры понял, я оценил) К слову, мяту я ему принёс, а за бутылку виски вечером сводил в бар. В качестве компенсации затрат :)