Бид долоо хоног бүр хамгийн сүүлийн үеийн технологийн талаар зарладаг сэтгэл хөдөлгөм цаг үед амьдарч байна. OpenAI саяхан DALLE 2-ыг текстээс дүрслэх хамгийн сүүлийн үеийн загварыг гаргалаа.
Байгалийн хэлний тайлбараас бодит график үүсгэж чаддаг шинэ хиймэл оюун ухааны системд цөөн хэдэн хүн эрт нэвтэрч чадсан. Энэ нь олон нийтэд хаалттай хэвээр байна.
Тогтвортой байдлын AI дараа нь гаргасан Тогтвортой тархалт загвар, DALLE2-ийн нээлттэй эхийн хувилбар. Энэ хөөргөлт бүх зүйлийг өөрчилсөн. Интернет даяар хүмүүс хурдан үр дүнг нийтэлж, бодит урлагийг гайхшруулж байв.
Тогтвортой диффуз гэж юу вэ?
Тогтвортой тархалт нь текстээс зураг үүсгэх, текстээс хамааран зургийг өөрчлөх, нягтрал багатай эсвэл бага нарийвчлалтай зураг дээр дэлгэрэнгүй мэдээллийг бөглөх чадвартай машин сургалтын загвар юм.
Үүнийг олон тэрбум зураг дээр сургасан бөгөөд үүнтэй дүйцэхүйц үр дүнд хүрч чадна DALL-E2 болон Дунд аялал. Тогтвортой байдлын AI зохион бүтээсэн бөгөөд 22 оны 2022-р сарын XNUMX-нд олон нийтэд ил болсон.
Гэхдээ орон нутгийн тооцооллын нөөц хязгаарлагдмал тул Тогтвортой тархалтын загвар нь өндөр чанартай зураг бүтээхэд удаан хугацаа шаарддаг. Загварыг үүлэн үйлчилгээ үзүүлэгч ашиглан онлайнаар ажиллуулах нь бидэнд бараг л хязгааргүй тооцооллын нөөцөөр хангаж, маш сайн үр дүнг илүү хурдан авах боломжийг олгодог.
Загварыг бичил үйлчилгээ болгон байршуулах нь бусад бүтээлч програмуудад ML загваруудыг онлайнаар ажиллуулахад төвөгтэй асуудлуудыг даван туулахгүйгээр загварын боломжийг илүү хялбар ашиглах боломжийг олгодог.
Энэ нийтлэлд бид тогтвортой тархалтын загварыг хэрхэн хөгжүүлж, AWS дээр байрлуулахыг харуулахыг хичээх болно.
Тогтвортой тархалтыг бий болгох, байрлуулах
BentoML болон Amazon Web Services EC2 нь Stable Diffusion загварыг онлайнаар байршуулах хоёр сонголт юм. BentoML нь томруулахад зориулагдсан нээлттэй эхийн хүрээ юм машин суралцах үйлчилгээ. BentoML-ийн тусламжтайгаар бид найдвартай дисперсийн үйлчилгээг бий болгож, AWS EC2-д байрлуулах болно.
Байгаль орчныг бэлтгэж, тогтвортой тархалтын загварыг татаж авах
Шаардлагуудыг суулгаж, репозиторыг хуулбарлана.
Та Stable Diffusion загварыг сонгож, татаж авах боломжтой. Нэг нарийвчлал нь 10 ГБ-аас дээш VRAM-тай CPU эсвэл GPU-д тохиромжтой. Хагас нарийвчлал нь 10 ГБ-аас бага VRAM-тай GPU-д тохиромжтой.
Тогтвортой тархалтыг бий болгох
Бид загварт үйлчлэх BentoML үйлчилгээг бүтээх болно RESTful API. Дараах жишээнд урьдчилан таамаглахад зориулсан дан нарийн загвар, үйлчилгээг бизнесийн логиктой холбох service.py модулийг ашигладаг. Бид эдгээр функцуудыг @svc.api-ээр тэмдэглэснээр API-ууд болгож чадна.
Цаашилбал, бид API-ийн оролт, гаралтын төрлийг параметрүүдэд тодорхойлж болно. Жишээлбэл, txt2img төгсгөлийн цэг нь JSON оролтыг хүлээн авч Зургийн гаралтыг үүсгэдэг бол img2img төгсгөлийн цэг нь Image болон JSON оролтыг хүлээн авч, Зургийн гаралтыг буцаана.
StableDiffusionRunnable нь чухал дүгнэлтийн логикийг тодорхойлдог. Runnable нь загварын txt2img хоолойн аргуудыг ажиллуулж, холбогдох оролтыг илгээх үүрэгтэй. Загварын дүгнэлтийн логикийг API-д ажиллуулахын тулд StableDiffusionRunnable-аас захиалгат Runner-ийг бүтээдэг.
Дараа нь туршилтын BentoML үйлчилгээг эхлүүлэхийн тулд дараах тушаалыг ашиглана уу. орон нутагт ажиллуулж байна Тогтвортой тархалтын загвар CPU-ийн талаархи дүгнэлт нь нэлээд удаан байна. Хүсэлт бүрийг боловсруулахад ойролцоогоор 5 минут зарцуулагдана.
Текстээс зураг
Текстээс зургийн гаралт
bentofile.yaml файл нь шаардлагатай файлууд болон хамаарлыг тодорхойлдог.
Бенто бүтээхийн тулд доорх командыг ашиглана уу. Bento нь BentoML үйлчилгээний түгээлтийн формат юм. Энэ нь үйлчилгээг эхлүүлэхэд шаардлагатай бүх өгөгдөл, тохиргоог агуулсан бие даасан архив юм.
Тогтвортой диффузын бентог хийж дуусгалаа. Хэрэв та бентог зөв гаргаж чадаагүй бол сандрах хэрэггүй; та дараагийн хэсэгт жагсаасан командуудыг ашиглан урьдчилан бүтээсэн загварыг татаж авах боломжтой.
Урьдчилан бүтээх загварууд
Урьдчилан бэлтгэсэн загварууд нь:
Тогтвортой тархалтын загварыг EC2 дээр байрлуул
Bento-г EC2-д байрлуулахын тулд бид bentoctl-г ашиглана. bentoctl нь танд бентогоо дурын газарт байрлуулах боломжийг олгоно үүлэн тавцан Terraform ашиглан. Terraform файлуудыг үүсгэж хэрэглэхийн тулд AWS EC2 операторыг суулгана уу.
Deployment config.yaml файлд байршуулалтыг аль хэдийн тохируулсан байна. Өөрийн шаардлагад нийцүүлэн засварлаж болно. Bento нь g4dn.xlarge хост дээр анхдагчаар тавигдсан Гүн сурах 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 хаягийг хөтөч дээр нээнэ үү. Эцэст нь, тогтвортой тархалт BentoML үйлчилгээ шаардлагагүй болсон бол байршуулалтыг устгана уу.
Дүгнэлт
Та SD болон түүний хамтрагч загварууд ямар гайхалтай, хүчирхэг болохыг харах боломжтой байх ёстой. Бид энэ үзэл баримтлалыг цаашид давтах уу, эсвэл илүү боловсронгуй арга руу шилжих үү гэдгийг цаг хугацаа харуулах болно.
Гэсэн хэдий ч орчин тойрон, зааврыг илүү сайн ойлгохын тулд тохируулгатай илүү том загваруудыг сургах санаачилга хийгдэж байна. Бид BentoML ашиглан Stable Diffusion үйлчилгээг хөгжүүлэхийг оролдсон бөгөөд үүнийг AWS EC2 дээр байрлуулсан.
Бид Тогтвортой тархалтын загварыг илүү хүчирхэг техник хангамж дээр ажиллуулж, хоцролт багатай зургуудыг үүсгэж, үйлчилгээг AWS EC2 дээр байрлуулснаар нэг компьютерээс давж гарах боломжтой болсон.
хариу үлдээх