Garai zirraragarriak bizi ditugu, astero puntako teknologiari buruzko iragarkiekin. OpenAIk testu-irudi puntako eredua kaleratu berri du DALLE 2.
Pertsona gutxi batzuk baino ez zuten sarbide goiztiarra hizkuntza naturaleko deskribapenetatik grafiko errealistak sor ditzakeen AI sistema berri batera. Oraindik publikoarentzat itxita dago.
Egonkortasuna AIk askatu zuen orduan Difusio egonkorra eredua, DALLE2-ren kode irekiko aldaera. Abian jarri honek dena aldatu du. Internet osoko jendea emaitza azkarrak argitaratzen ari ziren eta arte errealistak harritzen zuen.
Zer da Difusio Egonkorra?
Difusio egonkorra Testutik irudiak sortzeko, testuaren arabera irudiak aldatzeko eta bereizmen txikiko edo xehetasun gutxiko irudietan xehetasunak betetzeko gai den ikaskuntza automatikoko eredua da.
Mila milioi argazkitan trebatu zen eta horren baliokideak diren emaitzak eman ditzake DALL-E2 MidJourney. Egonkortasuna AI asmatu zuen, eta 22ko abuztuaren 2022an argitaratu zen.
Baina tokiko baliabide konputazional mugatuekin, Stable Diffusion ereduak denbora luzea behar du kalitate handiko argazkiak sortzeko. Hodeiko hornitzaile bat erabiliz eredua sarean exekutatzen aritzeak baliabide konputazional ia infinituak eskaintzen dizkigu eta emaitza bikainak askoz azkarrago eskuratzen ditugu.
Eredua mikrozerbitzu gisa ostatatzeak beste sormen-aplikazio batzuek ereduaren potentziala errazago ustiatzea ahalbidetzen du, ML ereduak linean exekutatzeko konplexutasunei aurre egin beharrik gabe.
Argitalpen honetan, difusio-eredu egonkorra nola garatu eta AWSra nola zabaldu erakusten saiatuko gara.
Eraiki eta zabaldu difusio egonkorra
BentoML eta Amazon Web Services EC2 Stable Diffusion eredua sarean ostatatzeko bi aukera dira. BentoML eskalatzeko kode irekiko esparru bat da makina ikaskuntza zerbitzuak. BentoML-rekin, sakabanaketa zerbitzu fidagarria eraikiko dugu eta AWS EC2-n zabalduko dugu.
Ingurunea prestatzea eta difusio-eredu egonkorra deskargatzea
Instalatu baldintzak eta klonatu biltegia.
Stable Diffusion eredua hautatu eta deskargatu dezakezu. Doitasun bakarra 10 GB VRAM baino handiagoa duten CPU edo GPUetarako egokia da. Zehaztasun erdia aproposa da 10 GB VRAM baino gutxiago duten GPUetarako.
Hedapen egonkorra eraikitzea
BentoML zerbitzu bat eraikiko dugu atzean dagoen eredua zerbitzatzeko API berriena. Hurrengo adibidean zehaztasun bakarraren eredua erabiltzen da iragarpenerako eta service.py modulua zerbitzua negozio-logikara konektatzeko. Funtzioak API gisa azal ditzakegu @svc.api-rekin etiketatuz.
Gainera, APIen sarrera eta irteera motak defini ditzakegu parametroetan. txt2img amaiera-puntuak, adibidez, JSON sarrera bat jasotzen du eta Irudiaren irteera sortzen du, img2img amaiera-puntuak Irudi bat eta JSON sarrera bat onartzen ditu eta Irudiaren irteera bat itzultzen du.
StableDiffusionRunnable batek funtsezko inferentzia logika definitzen du. Exekutagarria ereduaren txt2img kanalizazio metodoak exekutatzen eta dagozkion sarrerak bidaltzeaz arduratzen da. Ereduaren inferentzia logika APIetan exekutatzeko, StableDiffusionRunnable-tik Korrikatzaile pertsonalizatu bat eraikitzen da.
Ondoren, erabili komando hau BentoML zerbitzu bat probatzeko. Lokalean exekutatzen Difusio-eredu egonkorra CPUen inferentzia nahiko geldoa da. Eskaera bakoitzak 5 minutu inguru beharko ditu prozesatzeko.
Testutik irudira
Testutik irudira irteera
bentofile.yaml fitxategiak beharrezko fitxategiak eta menpekotasunak definitzen ditu.
Erabili beheko komandoa bento bat eraikitzeko. Bento bat BentoML zerbitzu baten banaketa formatua da. Zerbitzua abiarazteko behar diren datu eta konfigurazio guztiak biltzen dituen artxibo autonomoa da.
Stable Diffusion bentoa amaitu da. Bentoa behar bezala sortu ezin izan bazenu, ez zaitez izutu; aurrez eraikitako eredua deskarga dezakezu hurrengo atalean zerrendatutako komandoak erabiliz.
Aurrez eraikitako ereduak
Hauek dira eraiki aurreko ereduak:
Zabaldu Stable Diffusion eredua EC2-n
Bentoa EC2ra zabaltzeko, bentoctl erabiliko dugu. bentoctl-ek zure bentoak edozeinetara zabaltzen utzi diezazuke hodei plataforma Terraform erabiliz. Terraform fitxategiak eraikitzeko eta aplikatzeko, instalatu AWS EC2 operadorea.
Deployment config.yaml fitxategian, inplementazioa dagoeneko konfiguratuta dago. Mesedez, anima zaitez zure eskakizunetara editatzeko. Bentoa lehenespenez inplementatzen da g4dn.xlarge ostalari batekin Deep Learning AMI GPU PyTorch 1.12.0 (Ubuntu 20.04) AMI us-west-1 eskualdean.
Sortu Terraform fitxategiak orain. Sortu Docker irudia eta kargatu AWS ECRra. Zure banda-zabaleraren arabera, irudiak kargatzeko denbora luzea izan daiteke. Bentoa AWS EC2-ra zabaltzean, erabili Terraform fitxategiak.
Swagger UI-ra sartzeko, konektatu EC2 kontsolara eta ireki IP helbide publikoa arakatzaile batean. Azkenik, Stable Diffusion BentoML zerbitzua gehiago behar ez bada, kendu hedapena.
Ondorioa
SD eta bere eredu osagarriak zein liluragarriak eta indartsuak diren ikusi beharko zenuke. Denborak esango du kontzeptua gehiago errepikatuko dugun edo ikuspegi sofistikatuagoetara pasatuko dugun.
Hala ere, gaur egun eredu handiagoak trebatzeko ekimenak daude, ingurunea eta argibideak hobeto jabetzeko doikuntzak dituztenak. BentoML erabiliz Stable Diffusion zerbitzua garatzen saiatu gara eta AWS EC2-n zabaldu dugu.
Stable Diffusion eredua hardware indartsuago batean exekutatu ahal izan dugu, latentzia txikiko argazkiak sortu eta ordenagailu bakar batetik haratago hedatu ahal izan dugu zerbitzua AWS EC2-n zabalduz.
Utzi erantzun bat