Смешно как история на релиза на открыти модели за преобразуване на текстови подсказки в изображения, разработвани и обучавани от Stability AI, наподобява на редица възходи и падения на последователно излизащите версии на операционната система Microsoft. След легендарния успех на XP, да припомним, се появи проблемната Vista; след това великолепната "седмица" — и след нея безполезната Windows 8. За Stable Diffusion, с първоначално непривлекателна, но постепенно усъвършенствана от ентусиасти версия 1.5, последва откровено неуспешната SD 2.0 — неуспешна именно защото включваше нетипичен за модели от този тип кодировчик OpenCLIP, от . В хода на такова селектиране бяха отстранени не само неподходящи (NSFW) визуални референции, но и картини и илюстрации, създадени от популярни художници, като прочутия Грег Рутковски (Greg Rutkowski). Именно последното окончателно раздразни ентусиастите: ако за SD 1.5 дори в оригиналния вариант, без прилагане на специално обучени чекпойнтове, просто подадените подсказки с стилове — "епичен средновековен фантастичен пейзаж, в стила на Грег Рутковски" — сработваха прекрасно и резултатът беше впечатляващ, то SD 2.0 спря да "разпознава" имената на най-широко известните илюстратори, авторските права на които за създадените произведения все още са актуални и които не бяха предоставили тези произведения за обучение на ИИ. Приходеше се да се използват повече думи за описание на желаното, а при твърде дълги подсказки моделът справяше зле.

Седнете — станете, седнете — станете
Съчетанието с изменен кодек (преобразувател на текстовите подсказки в цифрови токени, с които след това работи моделът) направи невъзможно прилагането на именувани стилове, което лиши ентусиастите от мотивацията да доработят "двойката" сами. Наистина: тук трябваше паралелно да се разбира как да се настроят вече работещите техники за съставяне на подсказки под новия кодек и да се дообучи моделът да разпознава образите и темите, с които създателите не го запознаха на етапа на първичното му обучение, — а качествената разлика от "полуторката", генерираните "двойка" картини все пак не гарантираха. Да, от стандартния размер за SD 1.5 512×512 пиксела се получи качествен скок до 768×768, но към това време общността вече активно използваше апскейлери, аутпейнтери и други инструменти за увеличаване на размерите на крайното изображение, така че SD 2.0 премина по-скоро незабелязано. SDXL (разработен от OpenAI и използван, в частност, от проекта DALL-E) - кодът му също е отворен, но базата данни, на която е обучен, , е проприетарна. Освен това стандартният размер на платното на "Оверсайз" нарасна до 1024×1024, а освен това се появи цял ред допълнителни подобрения, - така че ентусиастите с удоволствие се заеха с доработката му. И към момента именно SDXL (включително по-новите производни, които по-малко изискват от "железото", като и ) може уверено да се счита за най-популярния AI генератор на изображения с отворен код. Въпреки това, яростни привърженици на SD 1.5 аргументирано спорят с това, като посочват, че важни инструменти като ControlNet в SDXL .
И ето, от 12 юни 2024 г., с момента на "освобождаването в дивата природа" на кода на модела, позволяваща локални генерации, трябваше да настъпи времето на "отворената" версия SD 3 — по-точно казано, (SD3M или SD3 2B) с 2 милиарда работни параметри. Условно, напомняме, това число съответства на общия брой тегла на входовете на всички перцептрони на модела. Още по-рано, през април, Stability AI доведе до съвършенство и предложи за търговска употреба 8-милонната (по брой параметри) , която също е SD3 8B. При SDXL 1.0, да припомним, — , обаче SD3M, според разработчиците, е . Има се предвид, че при по-ниски нужди от видео памет, в сравнение с «Оверсайза», дори в отговор на несложни подсказки тя трябва да дава изображения «с ново ниво на фотореалистичност». Сред предимствата на «тройката» бяха споменати също «безпрецедентното качество на типографията на генерираните изображения», «повишено разбиране на подсказките посредством сътрудничеството на трима кодировчици» и «готовността за ефективно дообучение дори при ограничени набори от данни».

Очевидно е било, че общността от ентусиасти, получаваща новата дългоочаквана играчка, ще започне да я усъвършенства с същия ентусиазъм, с какъвто работеха в миналото с «полуторката» и «Оверсайз». Обаче още от самото начало нещата тръгнаха наопаки: SD3M в първите часове след публикуването на файловете на модела в Hugging Face и Civitai својата аудитория, и то два пъти. Първият път — с необяснима на пръв поглед идиосинкразия към подсказките, включващи на вид невинната фраза «лежащ на/в тревата»; вторият — с невероятно неясни формулировки в потребителското споразумение, в които дори професионалните юристи не можаха да се ориентират веднага. И въпреки че за обикновения ентусиаст на AI изкуствата последното изглежда незначително, именно законовата страна на въпроса ще се отрази по най-пряк начин на бъдещото развитие на модела — дори до точката, в която може и да не последва никакво развитие.
Предишните творения на Stable Diffusion с отворен код (по-точно, с отворени стойности на невронните мрежови тегла, достъпни за безплатно сваляне и последващо локално изпълнение), като SDXL, бяха придружени от един от типичните заGenerative модели с характеристики като «вечна, световна, неексклузивна, безплатна, безвъзмездна, необратима лицензия за авторски права за репродукция, подготовка, публична демонстрация, публично изпълнение, сублицензиране и разпространение на допълнителни материали, както на самия модел, така и на производни от него». «Тройката» предвижда две разновидности на лицензиране: — с доста разхлабени формулировки като «Stability AI ви предоставя неексклузивна, световна, непередаваема, несублицензируема, отзивна, безвъзмездна и ограничена лицензия за интелектуална собственост» — и .
Тревата не води до добро
Съвсем скоро общество се наложи на мнението, че . И по същество обяви бойкот на компанията-разработчик, не искайки да губи време и усилия за дообучение на явно недомислена и неправилно опростена модел — осъзнавайки, че Stability AI по всяко време може, по всяко капризно желание на своите медиамениджъри, да отзове лиценза, издаден преди това на конкретен ентусиаст, занимаващ се с такова дообучение. Лицензионният договор е формулиран така, че у изучаващите го неюристи остава впечатлението, че след отзова на разрешението за търговско ползване на SD3M, бившият получател ще бъде длъжен да изтрие всички произведени от него производни на предоставената му интелектуална собственост, включително както самите дообучени модели (LoRA, текстови инверсии, цели чекпойнти), така и техните производни (цитата: «При прекратяване на това споразумение, вие трябва да изтриете и да спрете да използвате каквито и да е софтуерни продукти или производни работи») — т.е. плодовете на труда на вече други хора, използващи тези производни модели като отправна точка за собствената си работа; при което никой и по никакъв начин не е заплатил, извършено на чист ентусиазъм.
Скоро след като потокът от възмущение достигна стратосферни височини, започнаха да се появяват съобщения вече от професионални юристи, И как отзыв с запретом на дальнейшее использование на самом деле должен касаться лишь некоторых вспомогательных продуктов с закрытым кодом, которые Stability AI передаст коммерческому пользователю (например, для ускорения и оптимизации той же дообучения SD3M), — но финальных разъяснений по этому поводу сама компания так и не предоставила. И сам факт такого гнетущего молчания на протяжении уже трёх недель (на момент написания данной статьи) с момента появления «троечки» в открытом доступе вредит репутации разработчика гораздо больше, чем трава — генерируемая его творением девушками.

Что касается пресловутой травы, которая буквально за считанные часы успела стать мемом , а потом и практически на всех более или менее профильных площадках в сети, то выяснилось, что присутствие в подсказке фразы вроде «a girl lying on the grass» приводит к тому, что в выдаче «троечки» появляются не только галлюцинации, но и кошмарные порождения больной — в медицинском смысле — фантазии художников и кинематографистов, специализирующихся на body horror (мы настоятельно рекомендуем, если вам дорога разум и жизнь, — держитесь подальше от подобного и даже не пытайтесь вбивать эту фразу в окно поиска по картинкам с отключённым фильтром безопасности). При этом изображения стоящих — и слегка сидящих — людей «троечка» создаёт на уверенную четвёрку с плюсом, а портреты порой и вовсе выходят безупречными; по крайней мере, не хуже, чем у базовой модели SDXL 1.0, — проблема тут именно в каком-то внутреннем табу на горизонтальное положение человеческого тела.
Судя по комментарию Эмада Мостака (Emad Mostaque), основателя и бывшего (до марта 2024 года) главы Stability AI, который покинул компанию, чтобы , грубое насилие над SD3M произошло перед открытием её весов для ограниченного некоммерческого использования (API более крупной модели SD3 8B для онлайн-генерации, напомним, , но её веса до сих пор остаются скрытыми) стало следствием стремления нынешнего руководства к безопасности — , сформулированными ещё в марте текущего года как . В рамките на тази политика, основана на генеративния модел SD3M, на потребителите не е разрешено да "извършват, популяризират, подпомагат, улесняват, насърчават, планират, подбуждат или поощряват по-нататъшно насилие, тероризъм или създаване на съдържание, което предизвиква омраза и дискриминира или заплашва защитена група хора (независимо дали на основа на пол, етническа принадлежност, сексуална идентичност или ориентация, религия и др.)", — така че никакви изображения на панди, борещи се с яростни дракони! Само котета в смешни шапки, кучета в сладки якета, бутилки с неизвестно съдържание и пресни бисквити направо от фурната!
Технически погледнато, може би изчистването на модела се състояло в това, че от тренировъчния набор данни просто са били изключени изображения с лежащи хора и други картинки, които по някакъв начин подтичавали недостойно тълкуване, — и затова сега „тройката“ просто „не разбира“ значението на думата „лежа“. Или обновената архитектура SD3 е успяла достатъчно уверено да идентифицира теглата на перцептроните, които активират по време на генерирането на "несигурни" изображения, — и тези тегла бяха целенасочено нулирани преди излизането, в резултат на което се получи „принудително халюциниране“. Може би, : кодировчикът коректно превежда текста на токени, но в „защитеното“ латентно пространство тези токени вече не сочат към нещо конкретно, — и затова получените пиксели се разпределят на картинката по същество на произволен принцип.

Въз основа на наличността на API на пълноценен, но затворен модел SD3 8B вече от няколко месеца и горещите уверения на медиамениджърите на Stability AI, че "компактифицираният" 2B , ентусиастите на ИИ-рисуването приеха публикуването на теглата на SD3M на 12 юни с голям ентусиазъм: . В момента все още можете да я получите, въпреки че по-обиколния начин, отколкото е обичайно за чекпойнтовете SDXL и SD 1.5. Всъщност, обичайният начин е да се обърнете към сайта Civitai, от който повечето модели се свалят без регистрация, но от 17 юни и до момента, в който предадохме настоящата статия за оформление, страницата, посветена на „тройката“, на този сайт . Причината е една: търговската лицензия за SD3M е написана с толкова неясен език, че дори юристите на Civitai взеха пауза за по-внимателно проучване. Защото, ако някой ентусиаст обучи LoRA за „тройката“ на своя компютър и я качи в Civitai, а Stability AI изведнъж реши, че резултатът е неподходящ, и отзове лиценцията на виновния, — как да постъпи хостинг сайтът? Той не само разполага чекпойнти, помощни циклопрограми и модели, а също така предоставя на посетителите възможност за облачна генерация на изображения и обучение на същите тези LoRA, текстови инверсии и др. В общи линии, докато процесът тече, файловете на самия модел и трите преобразувателя на текст в токени, които идват с него, могат да бъдат взети само .
Да започваме
Истината е, че има нюанс: за да получите достъп до входящите връзки, трябва да се впишете в сайта и след това да потвърдите приемането на споменатото по-рано драконовско лицензионно споразумение — обаче, тази процедура е безплатна и напълно достъпна от Русия. На разположение са общо четири варианта на модели (models) и четири преобразувателя на текстови подсказки в токени (encoders), плюс три референтни циклопрограмки за изпълнение в работната среда ComfyUI, :
модели:
- sd3_medium.safetensors
- sd3_medium_incl_clips.safetensors
- sd3_medium_incl_clips_t5xxlfp8.safetensors
- sd3_medium_incl_clips_t5xxlfp16.safetensors
кодировачи:
- clip_g.safetensors
- clip_l.safetensors
- t5xxl_fp8_e4m3fn.safetensors
- t5xxl_fp16.safetensors
циклопрограмки:
- sd3_medium_example_workflow_basic.json
- sd3_medium_example_workflow_multi_prompt.json
- sd3_medium_example_workflow_upscaling.json
В рамките на настоящата «Мастерская» ще се ограничим до основния модел sd3_medium.safetensors (4,2 ГБ), три кодировчика — clip_g.safetensors (1,3 ГБ), clip_l.safetensors (234 МБ) и t5xxl_fp8_e4m3fn.safetensors (4,7 ГБ), както и циклограма sd3_medium_example_workflow_multi_prompt.json. Факт е, че на нашата тестова машина е инсталирана, напомняме, видеокартата GeForce GTX 1070 с 8 ГБ видеоRAM, а в този обем не могат да се поместят по-големи модели с всички интегрирани преобразуватели наведнъж. При чекпойнтове на базата на SD 1.5 и SDXL кодировачите по подразбиране са вградени в основния файл, но в този случай тези преобразуватели, даже не два, а три, в съвкупност на 6 ГБ с лека, — заедно с модела вече излиза над 10 ГБ; а ако вземем 16-битната версия на кодировача T5XXL, ще се наложи още по-изключителна видеокарта. В варианта обаче, когато първо в видеопаметта се зареждат преобразувателите на текст в токени, а след това работещият с тези токени модел, прекрасно ще се справи дори с графичен адаптер от 6 ГБ. От тази гледна точка модулната «тройка» несъмнено печели от типичния SDXL чекпойнт на 5-7 ГБ.
SD3M представлява модел на базата на мултимодални дифузионни трансформатори () — и по този начин принципно се различава от по-ранните разработки на Stability AI (и не само нейни), които разчитат на «Мастерская» — не е място за дълбочинно изучаване на разликата между тези подходи към AI-генерацията на изображения; да кажем само, че , неговата способност да работи с повече токени (което, от своя страна, позволява на оператора да формулира доста пространни текстови подсказки, а на системата — достатъчно точно да ги следва), а също така и по-добро качество на получените в крайна сметка изображения. Пълноразмерният SD3 8B е способен да генерира изображения на платно с 4 Мпикс (2048×2048 пиксела), а също така в такива сметки, като възпроизвеждане на текст в изображението, точност на съответствието на получената картинка с текстовата подсказка и обща визуална естетика. Преобразуването на текст в векторни токени се извършва тук веднага от три кодировчика ( и един T5-XXL — «T5», между другото, от ) — и, общо взето, те не са задължени да работят с една и съща подсказка.

Но достатъчно с предварителните думи: нека се заемем с темата на „Мастерската“ — генерирането на изображения на базата на модела SD3M. За целта ще използваме, както вече беше споменато, работната среда ComfyUI, която можете да изтеглите . Подчертаваме, че този вариант е само за изпълнение на графични адаптери NVIDIA или директно на CPU AMD или Intel (което, разбира се, ще бъде значително по-бавно): на притежателите на видеокарти AMD rocm и pytorch, които могат да се инсталират чрез мениджъра за пакети pip.
След завършване на инсталацията на работната среда, трябва да поставите изтеглените по-рано файлове .safetensors: моделите — в каталога ComfyUImodelscheckpoints, а преобразувателите на текст в токени — в ComfyUImodelsclip. И — можете да започнете!
Време е да се ускорим
Заслужава да се спомене, че AUTOMATIC1111, добре позната на читателите от предишните „Мастерски“ на тема ИИ-рисуване, в края на юни също , но в ComfyUI поддръжката на новия модел все още остава най-пълна. Не е изненада — тъй като до съвсем наскоро авторът на „макаронния монстър“, известен на общността от ентусиасти под никнейма ComfyAnonimous или просто Comfy, , където работеше, наред с други неща, върху вътрешната работна среда, използвана от самите разработчици. Както ще видим малко по-късно, новата версия на ComfyUI наистина свидетелства за наличието на определени вътрешни сведения у нейния автор относно начина, по който е структурирана и работи тази противоречива модел, — сведения, с които създателите на други работни среди за локално изпълнение на Stable Diffusion 3 Medium по разбираеми причини не могат да се похвалят.

Инсталирането на ComfyUI в портативна версия за Windows е изключително лесно: след свалянето на съответния ZIP архив достатъчно е да го разархивирате в произволна директория; за предпочитане, разбира се, на логичен дял, базиран на SSD, а не на HDD, — обменът между устройството и паметта с оглед на предстоящите цикли на зареждане-изклюване на моделите дори за генерирането на една единствена картинка (околната среда първо ще трябва да постави в видеопаметта преобразователите на текста в токени, след това да изчисти видеопаметта и да зареди самия SD3M) се очаква да бъде особено значителен, колкото по-малко видеопамет разполага този компютър. Между другото, портативната инсталация е добра и със своята пълна независимост: нищо — с изключение на обема свободно пространство на логичния диск — не пречи да разположите локално колкото искате копия на ComfyUI, за да експериментирате с различни разширения, без да се страхувате да повредите вече отладената и отлично работеща система.

Убедете се, че файлът с основния модел SD3M без вградени кодировачи на текста в токени (файл stableDiffusion3SD3_sd3Medium.safetensors, 4,2 Гбайт) е поставен в подкаталога checkpoints (в нашата тестова инсталация целият път е C:Fun-n-GamesComfyUI-SD3ComfyUImodelscheckpoints), а трите модела на кодировачите (файлове stableDiffusion3SD3_textEncoderClipG.safetensors, stableDiffusion3SD3_textEncoderClipL.safetensors и stableDiffusion3SD3_textEncoderT5E4m3fn.safetensors; 1,3 Гбайт, 234 Мбайт и 4,7 Гбайт съответно) — в подкаталога clip (C:Fun-n-GamesComfyUI-SD3ComfyUImodelsclip), можете да стартирате работната среда с двоен клик върху файла run_nvidia_gpu.bat в кореновата папка (в нашия случай C:Fun-n-GamesComfyUI-SD3). След стартиране на сървъра в появилото се прозорец на командния ред на Windows се отваря автоматично (както подсказват настройките на BAT файла) нов таб в браузъра по подразбиране, където на адрес 127.0.0.1/8188 ще бъде достъпен уеб интерфейс. (нека е само в първоначален вариант) „пастовият монстър“.

Ако разполагате с по-модерна графична карта NVIDIA (от поколение RTX, а не GTX, дори и с 6 ГБ видео RAM), можете веднага да заредите работния поток, създаден от ComfyAnonimous, за който говорихме по-рано — файла comfy_example_workflows_sd3_medium_example_workflow_multi_prompt.json с множество прозорци за въвеждане на подсказки, по един за всеки от трите кодиращи модула — и да работите с него. Въпреки това, първо ще трябва да съответствате имената на четирите модела (в нодовете за зареждане) с наличните. Авторът на работния поток очевидно е действал на своето работно място (в Stability AI, както вече споменахме) с файлове, които са се наричали малко по-различно, така че ако натиснете бутона „Queue Prompt“ в спартанския интерфейс на ComfyUI веднага след зареждането на потока, работната среда ще извести за грешка.
Три семена за AI-генерация
Все пак, това не е особено трудно да се коригира: много по-притеснително е, че нашата остаряла GTX 1070 обработва SD3M ужасно бавно — генерирането на изображение отнема около 27-30 секунди на итерация, като имате предвид, че параметърът „Steps“ в работния поток е зададен на „28“, времето за обработка е неоправдано много. Затова ще направим малка оптимизация — ще използваме Python модула venv (), предназначен, междудругото, да ускори работата на генеративните AI модели. В комплект с портативната версия на ComfyUI той не е включен, , които в крайна сметка се свеждат до разгръщането на пълноценно Python обкръжение на локалния компютър — и активирането на необходимия модул от това обкръжение.

Надяваме се читателите на нашите „Мастерски“ вече да притежават активна работна инсталация на AUTOMATIC1111 на своите машини. В този случай всичко е значително по-просто: модул venv вече е разположен и всичко, което трябва да направите, за да го активирате при стартиране на работната среда ComfyUI, е . За да започнете, трябва да прекратите работата на сървъра, като превключите на неговия прозорец и натиснете «Ctrl» + «C», след което напишете «y» за потвърждение; след това — копирайте BAT файла run_nvidia_gpu.bat в нов, с име, например, run_with_venv.bat. Изходният файл за стартиране е доста лаконичен — той просто извиква преносимо инсталирана версия на Python с параметри —windows-standalone-build:
.python_embededpython.exe -s ComfyUImain.py —windows-standalone-build
pause
Този параметър сам по себе си не е особено двусмислен — той предполага някакви оптимизации, които вероятно са предназначени именно за по-новите графични адаптери NVIDIA и затова могат да влошат живота на тези, които все още се придържат към заслужените си GTX. Поради тази причина ще премахнем —windows-standalone-build от командния ред, а заедно с него и другата модерна оптимизация — активният по подразбиране «умен мениджър на паметта», smart memory, който , без да я освобождава. Това наистина ускорява рисуването на ИИ-картинки, обаче в същото време превръща нашия морално остарял компютър в еднозадачна система — не е възможно да се занимавате с уеб-сърфиране, играене или дори работа с документи и имейли на ПК паралелно с активността на работната среда. Така че за тези, които нямат отделен компютър за ИИ-изкуства, оптималният вариант представлява такъв BAT файл за стартиране на ComfyUI (не само с цел генериране на картинки с SD3M, между другото — за SDXL също е напълно подходящ):
@echo off
call cd C:Fun-n-GamesGitstable-diffusion-webuivenvScripts
ехо %
call activate.bat
echo venv activated
call cd C:Fun-n-GamesComfyUI-SD3
ехо %
call .python_embededpython.exe -s ComfyUImain.py —disable-smart-memory
pause
Тук се предполага, че преносимата инсталация на ComfyUI е извършена в каталога C:Fun-n-GamesComfyUI-SD3, а AUTOMATIC1111 е била предварително инсталирана в C:Fun-n-GamesGitstable-diffusion-webui. Многобройните «echo» са необходими просто за визуален контрол на това, че смяната на директориите протича нормално и необходимите команди се изпълняват, — след като всичко е отладено, те могат да бъдат премахнати от BAT файла.

Отново стартираме работната среда, този път два пъти щраквайки върху run_with_venv.bat. Понеже преди това просто затворихме сървъра, а уеб интерфейсът не беше пипан, в съответната вкладка все още трябва да остане същата основна диаграма на ComfyUI с коригираните имена на моделите. Нека обърнем внимание на дясната ѝ част: там е разположен възел "Preview Image", който не записва готовото изображение на диска, а просто го демонстрира. Ако всеки път стартираме диаграмата за генериране на точно едно изображение, визуално да го оценяваме, да променяме параметрите и да стартираме отново — това е напълно работещ вариант: желаното изображение винаги може да бъде запазено ръчно с десен бутон върху него. Но ако в работната среда се генерират множество изображения последователно, по-добре е резултатите да се съхраняват автоматично в постоянната памет (в каталога ComfyUIoutput по подразбиране).

Така че е по-добре веднага да сменим възела "Preview Image" с "Save Image". За целта щракваме два пъти с левия бутон на мишката на произволно място от диаграмата — ще се отвори прозорец за избор на възли с поле за търсене. В това поле ще започнем да пишем "Save..." — и почти веднага ще видим исканото название. След това остава само да щракнем върху него и да свържем входа на появилия се възел с изхода "IMAGE" на възела "VAE Decode", където първоначално беше свързан "Preview Image". Самият "Preview Image" може да бъде премахнат — просто го маркираме, щраквайки върху заглавието, и натискаме клавиша "Del" на клавиатурата.

И ето сега — най-накрая е време да стартираме основната диаграма, създадена от ComfyAnonymous (с нашите скромни корекции) за изпълнение. Излиза следното:

Доста впечатляваща картинка с настроение — и не бихте казали, че е създадена с помощта на същия модел, който тотално разваля инструкцията за рисуване на лежащи на трева хора. При това системата работи доста стабилно — около 5-6 секунди на итерация за картинка с площ от 1 Мпикс на GTX 1070 може да се счита за достойно представяне. За сравнение: същият ПК в същата ComfyUI с същия BAT файл генерира SDXL картинки с подобни размери, изразходвайки около 6-7 секунди на всяка итерация, така че "троечката" може да се признае за по-малко изискваща към хардуеста на ПК, на който се извършва ИИ генерация.

Нека сега коригираме размерите на платното. Неподалеку от нода „EmptySD3LatentImage“, която задава размерите, се намира „празна“ (т.е. не е свързана с нищо) справочна нода „Note“, в която има важно напомняне: общата площ на картината в случая SD3M трябва да е около 1 Мпикс, — на базата на което трябва да подберем размерите на страните на правоугълното платно. Нека ги зададем като 1344×768 — точно около 1,03 Мпикс.
Обърнете внимание: по-горе се намира нода „Seed“, където е зададена самата семка, в този случай „945512652412924“, и е уточнено, че след генерирането тя не трябва да се променя (параметър „fixed“).

Ще изпълним същата циклограма с предишната семка, но вече за правоугълното платно. Веднага става ясно, че времето за изпълнение общо е по-малко, въпреки че скоростта на рисуване е останала същата — по-малко от 6 с на итерация. И това е логично: след като текстовите подсказки не се промениха, няма нужда отново да се зареждат кодировачите за тях. Картината на изхода, разбира се, малко се различава от първата, квадратна, но не е решаваща — общата композиция, както се очакваше, е запазена.

Сега нека обърнем внимание на нодите „CLIPTextEncodeSD3“ и „CLIP Text Encode (Negative Prompt)“. Първата се отличава с това, че съдържа три полета за въвеждане; ако премахнем текста от тях, ще станат видими бележки, за какви кодировачи са предназначени — отгоре надолу това са CLIP G, CLIP L и T5XXL. По обясними причини преди нямаше подобни ноди в ComfyUI. Опорната циклограма съдържа повторящи се кратки подсказки за първите две текстови полета (за преобразувателите CLIP G и CLIP L) и много по-обширна за третото — T5XXL. Ясно е, че съдържанието на тези полета може да се играе в широки граници, а самото проучване на това в каква степен промяната на текста в тях влияе на крайното изображение представлява нетривиална, но изключително интересна задача. Въпреки това, по причини, които ще станат ясни по-късно, няма да се занимаваме с нея непосредствено.
В нода „CLIP Text Encode (Negative Prompt)“ отсутсвует нещо специално, — оценете колко труден е пътят от нея до съответния вход „conditioning“ на основната нода „KSampler“! Този път се разделя, като една от клонките (горната в случая) показва, че от 10% от стъпките на генерация до нейното приключване системата изобщо няма да взима предвид негативната подсказка (преминаването през нода „ConditioningZeroOut“ означава точно нулиране на условията). Докато втората клонка пропуска негативната подсказка (също условно с половин тежест) за по-нататъшна обработка без изменения — но само за първите 10% от общия брой стъпки на генерация.
Мъглявото далеч
Още веднъж: първите 10%, т.е. 3 от 28 определения в този случай, негативната подсказка се предава в нода „KSampler“, която е ангажирана с формирането на изображение в латентното пространство (в пространство от пиксели, т.е. в разбираема за човека картинка, резултатът от нея се превежда от следващата нода, „VAE Decoder“), по нормалния начин: горната клонка (с нулиране на условията) е неактивна, работи само долната. Останалите 90% стъпки (25 от 28 в нашия случай) негативната подсказка не работи изобщо: активна е точно горната клонка на предаване на условията — с тяхното нулиране, — а движението по долната е блокирано от граничния параметър за задействане на съответния нода „ConditioningSetTimestepRange“. Сега е ясно, защо редица наблюдатели твърдят, че , — ефектът от тях (ако разгледаме точно този, основен, цикъл и предполагаме, че на сайтовете с онлайн генерация по модела SD3 Medium действат аналогични правила) е минимален.

И все пак той съществува: ако просто свържете изхода на възела «CLIP Text Encode (Negative Prompt)» с съответния вход на «KSampler» (или обозначите всички междинни възли с условия по този маршрут като «пропускаеми», «Bypass», което ще доведе до същия ефект), качеството на крайното изображение значително ще се влоши. Това, между другото, може да се разглежда като косвено доказателство за «недопечеността» на SD3M, тъй като регулирането на силата и значимостта на негативната подсказка, строго погледнато, би трябвало да бъде в компетенцията на разработчиците дори преди публикуването на теглата на модела в открит достъп. Двете отсечки на хитро зададени условия за прилагане на негативната подсказка — един вид заплата, и в този смисъл на раздути от маркетинговия отдел на Stability AI очаквания, изглеждат съвсем основателни.
Липсата на кратко официално ръководство за работа с SD3M доведе до това, че в мрежата вече циркулират слухове, че тази модел . Което, разбира се, не е така, но във всеки случай тези подсказки трябва да се прилагат по съвсем различен начин, . В частност, ентусиастите наистина настояват, че добавянето към негативното поле на детайлни описания на колкото се може повече неприличия (да-да, стари добри «nsfw, nude» не са достатъчни — ще трябва сериозно да се напрегне въображението) дори на проклетата девойка, лежаща на тревата. Дали е така или не — няма как да се установи без внимателна проверка (при това не е сигурно, че дори обозначението «18+» в заглавието на нашия сайт ще ни предпази от искове от страна на яростни защитници на морала, ако се осмелим да публикуваме сглобената от ентусиастите «чудо-подсказка» — въпреки че е на английски). Тази забавна ситуация напомня на казус с , благодарение на които — именно защото съдържаха доста детайлни описания на това какво и как не трябва да правят добропорядъчните християни — до нас достигнаха поне фрагментарни писмени свидетелства за вярванията и обичаите на дохристиянска Русия.

Сега, надяваме се, стана по-ясно по каква причина задълбочаването в изучаването на SD3M на този етап изглежда не толкова разумно разхищаване на усилия и време. Има наистина какво да се обсъди и проучи: и доста строги препоръчани параметри за генерация в възела "KSampler" (CFG — 4,5-5,0; брой стъпки — около 28; двойката sampler/scheduler — изключително dpmpp_2m/sgm_uniform, в противен случай качеството на изхода значително пада); и крайно значителен вариативен аспект на субективното качество на генерации при строго едни и същи начални параметри, но с различни промени; и избавление от прочутото "клетва на легналостта в/на тревата" (за което вече ); и, всъщност, установяване на какви именно параметри на генерация влияят трите преобразувателя от текст в токени — и как, работейки с тях, да се постигнат наистина велики шедьоври на ИИзобразителното ИИскусство (ако това с "тройката" изобщо е възможно).
Тем повече, че уволнението на Емада Мостака през март и ComfyAnonimous през юни, , — не са единствените неприятности, сполетели Stability AI. Както съобщава Reuters, позовавайки се на The Information, този британски стартъп буквално само преди момент (в момента на написване на настоящата статия) отново , който стана Прем Аккараджу (Prem Akkaraju), назначен от известна глобална група ИТ-инвеститори — а тя, от своя страна, е готова да вложи в компанията значителна сума в брой (). Положението на самата Stability AI като бизнес структура днес е открито нестабилно; много разочаровани — и в такава ситуация е трудно да се очаква от компанията внимателна работа дори по толкова очевидни грешки.

Неразумната лицензна политика за съжаление възпрепятства обществото да доведе SD3M до желаното състояние, както се случи с SD 1.5 и SDXL. Поне производните чекпойнти и инструменти като LoRA за последните два модела ще останат достъпни за локално изпълнение, дори когато (и ако) Stability AI завърши своя път като търговска структура. Веднага след оглушителния провал на „тройката“, в профилните форуми в мрежата започнаха все по-често да се чуват гласове в подкрепа на създаването на некомерсиален проект за разработка на генеративен модел за преобразуване на текст в образи на база краудфъндинг, — и до момента това движение започва да се оформя под името . За готовността активно да се присъединят към него вече заявиха Invoke (една от платформите за онлайн генериране на ИИ, насочена към професионални студия), Comfy Org (екип, който се занимава с поддръжката и развитието на ComfyUI), Civitai (която не се нуждае от представяне) и екипът зад LAION (базата с анотирани изображения, на която предимно се обучават подобни модели).
Така че в обозримо бъдеще новите издания на „Майсторската“ вероятно ще се ориентират към работа с тези модели, за които обществото вече е успяло да създаде широк набор от подобрения и допълнителни инструменти, — на „полуторка“ и „Оверсайз“. Възможно е тържеството на SD3M все още да настъпи, — но днес е трудно дори да се предположи кога точно. А засега заинтересованите могат да изтеглят архив с показаните в тази статия генерации на SD3M (циклотограмите са интегрирани директно в PNG файловете; достатъчно е да плъзнете изображението на работното поле на ComfyUI от „Файловия мениджър“ на Windows, за да възпроизведете целия ред и параметри на генерирането) . Може би някой от нашите читатели ще успее по-рано от редовните потребители на Reddit и Hugging Face да открие оптималния начин за разпределение на текста в трите полета за насоки, например?

Материали по темата:
.
.
.
.
.
Източник: 3dnews.ru
