Біз апта сайын озық технологиялар туралы хабарландырулар берілетін қызықты уақытта өмір сүріп жатырмыз. OpenAI жаңа ғана DALLE 2 мәтіндік кескін үлгісін шығарды.
Табиғи тілдегі сипаттамалардан шынайы графиканы жасай алатын жаңа AI жүйесіне бірнеше адам ғана ерте қол жеткізді. Ол әлі де жұртшылық үшін жабық.
Тұрақтылық AI содан кейін шығарды Тұрақты диффузия модель, DALLE2-тің ашық бастапқы нұсқасы. Бұл іске қосу бәрін өзгертті. Бүкіл интернеттегі адамдар жылдам нәтижелерді жариялап, шынайы өнерге таң қалды.
Тұрақты диффузия дегеніміз не?
Тұрақты диффузия мәтіннен кескіндер жасауға, мәтінге байланысты кескіндерді өзгертуге және ажыратымдылығы төмен немесе егжей-тегжейлі кескіндерге мәліметтерді толтыруға қабілетті машиналық оқыту моделі.
Ол миллиардтаған фотосуреттерде оқытылды және оған тең нәтиже бере алады DALL-E2 және Орташа саяхат. Тұрақтылық AI ойлап тапты және ол 22 жылдың 2022 тамызында жария болды.
Бірақ шектеулі жергілікті есептеу ресурстарымен Тұрақты диффузия үлгісі жоғары сапалы суреттерді жасау үшін көп уақытты алады. Модельді бұлттық провайдер арқылы онлайн іске қосу бізге шексіз дерлік есептеу ресурстарын береді және тамаша нәтижелерді әлдеқайда жылдам алуға мүмкіндік береді.
Модельді микросервис ретінде орналастыру басқа креативті қолданбаларға ML үлгілерін желіде іске қосу қиындықтарымен айналыспай, модельдің әлеуетін оңайырақ пайдалануға мүмкіндік береді.
Бұл постта біз тұрақты диффузиялық модельді қалай жасау керектігін және оны AWS жүйесіне орналастыруды көрсетуге тырысамыз.
Тұрақты диффузияны құру және орналастыру
BentoML және Amazon Web Services EC2 - тұрақты диффузия үлгісін желіде орналастырудың екі нұсқасы. BentoML масштабтауға арналған ашық бастапқы негіз болып табылады машина оқыту қызметтер. BentoML көмегімен біз сенімді дисперсия қызметін құрып, оны AWS EC2 жүйесіне орналастырамыз.
Қоршаған ортаны дайындау және тұрақты диффузия үлгісін жүктеп алу
Талаптарды орнатыңыз және репозиторийді клондаңыз.
Тұрақты диффузия үлгісін таңдап, жүктеп алуға болады. Бір дәлдік 10 ГБ-тан жоғары VRAM-ге ие CPU немесе GPU үшін жарамды. Жартылай дәлдік 10 ГБ-тан аз VRAM бар GPU үшін өте қолайлы.
Тұрақты диффузияны құру
a артындағы үлгіге қызмет көрсету үшін BentoML қызметін құрастырамыз RESTful API. Келесі мысал болжау үшін жалғыз дәлдік үлгісін және қызметті бизнес логикасына қосу үшін service.py модулін пайдаланады. Функцияларды @svc.api арқылы белгілеу арқылы API ретінде көрсете аламыз.
Сонымен қатар, API интерфейстерінің кіріс және шығыс түрлерін параметрлерде анықтай аламыз. Мысалы, txt2img соңғы нүктесі JSON кірісін алады және Кескін шығысын шығарады, ал img2img соңғы нүктесі Кескін мен JSON кірісін қабылдайды және Кескін шығысын қайтарады.
StableDiffusionRunnable маңызды қорытынды логикасын анықтайды. Орындалатын құрылғы үлгінің txt2img құбыр әдістерін іске қосуға және тиісті кірістерді жіберуге жауапты. API интерфейстерінде үлгі шығару логикасын іске қосу үшін теңшелетін Runner StableDiffusionRunnable ішінен құрастырылады.
Содан кейін сынақ үшін BentoML қызметін бастау үшін келесі пәрменді пайдаланыңыз. жергілікті түрде басқарады Тұрақты диффузиялық модель процессорлар туралы қорытынды өте баяу. Әрбір сұрауды өңдеуге шамамен 5 минут кетеді.
Мәтіннен кескінге
Мәтінді кескінге шығару
bentofile.yaml файлы қажетті файлдар мен тәуелділіктерді анықтайды.
Бенто жасау үшін төмендегі пәрменді пайдаланыңыз. Bento — BentoML қызметінің тарату пішімі. Бұл қызметті бастау үшін қажетті барлық деректер мен конфигурацияларды қамтитын дербес мұрағат.
Тұрақты диффузиялық бенто аяқталды. Егер сіз бентоны дұрыс жасай алмасаңыз, үрейленбеңіз; келесі бөлімде тізімделген пәрмендерді пайдаланып алдын ала құрастырылған үлгіні жүктеп алуға болады.
Алдын ала құрастырылған модельдер
Төменде алдын ала құрастырылған модельдер берілген:
Тұрақты диффузия үлгісін EC2-ге орналастырыңыз
Бентоны EC2-ге орналастыру үшін біз bentoctl қолданамыз. bentoctl сізге бентостарды кез келгенге орналастыруға мүмкіндік береді бұлтты платформа Terraform көмегімен. Terraform файлдарын құру және қолдану үшін AWS EC2 операторын орнатыңыз.
Deployment config.yaml файлында орналастыру бұрыннан конфигурацияланған. Талаптарыңызға қарай өңдеуіңізге болады. Bento әдепкі бойынша g4dn.xlarge хостында орнатылған Deep Learning AMI GPU PyTorch 1.12.0 (Ubuntu 20.04) us-west-1 аймағындағы AMI.
Terraform файлдарын қазір жасаңыз. Docker кескінін жасаңыз және оны AWS ECR жүйесіне жүктеңіз. Өткізу қабілетіне байланысты кескінді жүктеп салу ұзақ уақыт алуы мүмкін. Bento құрылғысын AWS EC2 жүйесіне орналастыру кезінде Terraform файлдарын пайдаланыңыз.
Swagger UI интерфейсіне қол жеткізу үшін EC2 консоліне қосылыңыз және шолғышта жалпыға қолжетімді IP мекенжайын ашыңыз. Соңында, Stable Diffusion BentoML қызметі бұдан былай қажет болмаса, орналастыруды жойыңыз.
қорытынды
Сіз SD және оның серіктес үлгілерінің қаншалықты қызықты және күшті екенін көре аласыз. Тұжырымдаманы одан әрі қайталаймыз ба, әлде күрделі тәсілдерге көшеміз бе, уақыт көрсетеді.
Дегенмен, қазіргі уақытта қоршаған ортаны және нұсқауларды жақсырақ түсіну үшін түзетулері бар үлкенірек модельдерді оқыту бойынша бастамалар жүргізілуде. Біз BentoML көмегімен тұрақты диффузия қызметін дамытуға тырыстық және оны AWS EC2 жүйесіне орналастырдық.
Біз тұрақты диффузия үлгісін қуаттырақ жабдықта іске қостық, кідірісі төмен суреттерді жасай алдық және қызметті AWS EC2 жүйесінде қолдану арқылы бір компьютерден тыс кеңейте алдық.
пікір қалдыру