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