Ko večina ljudi sliši »umetno inteligenco«, si predstavljajo nevronske mreže, domiselne algoritme ali morda tiste nekoliko nenavadne humanoidne robote. Kar se le redko omeni vnaprej, je tole: umetna inteligenca porablja pomnilnik skoraj tako požrešno kot ga računa . In ne kar tako poljubno shranjevanje objektov tiho sedi v ozadju in opravlja neglamurozno, a nujno delo hranjenja modelov s podatki, ki jih potrebujejo.
Poglejmo, zakaj je shranjevanje objektov tako ključnega pomena za umetno inteligenco, kako se razlikuje od »stare garde« sistemov za shranjevanje in zakaj je na koncu eden ključnih vzvodov za skalabilnost in zmogljivost.
Članki, ki jih boste morda želeli prebrati po tem:
🔗 Katere tehnologije morajo biti vzpostavljene za uporabo obsežne generativne umetne inteligence za podjetja
Ključne tehnologije, ki jih podjetja potrebujejo za učinkovito skaliranje generativne umetne inteligence.
🔗 Upravljanje podatkov za orodja umetne inteligence, ki bi jih morali upoštevati
Najboljše prakse za ravnanje s podatki za optimizacijo delovanja umetne inteligence.
🔗 Posledice umetne inteligence za poslovno strategijo
Kako umetna inteligenca vpliva na poslovne strategije in dolgoročno odločanje.
Zakaj je shranjevanje objektov primerno za umetno inteligenco? 🌟
Glavna ideja: shranjevanje objektov se ne obremenjuje z mapami ali togimi blokovnimi postavitvami. Podatke razdeli na »objekte«, od katerih je vsak označen z metapodatki. Ti metapodatki so lahko podatki na ravni sistema (velikost, časovni žigi, razred shranjevanja) in uporabniško definirane oznake ključ:vrednost [1]. Predstavljajte si to kot vsako datoteko, ki vsebuje kup lepljivih listkov, ki vam natančno povedo, kaj je, kako je bila ustvarjena in kam spada v vaš cevovod.
Za ekipe z umetno inteligenco je ta prilagodljivost prelomnica:
-
Skaliranje brez migren – Podatkovna jezera se raztezajo v petabajte, shrambe objektov pa to z lahkoto obvladujejo. Zasnovana so za skoraj neomejeno rast in vzdržljivost v več AZ (Amazon S3 se privzeto hvali z »11 devetkami« in replikacijo med conami) [2].
-
Bogastvo metapodatkov - hitrejše iskanje, čistejši filtri in pametnejši cevovodi, saj se kontekst spreminja skupaj z vsakim objektom [1].
-
Izvirno v oblaku – podatki prihajajo prek HTTP(S), kar pomeni, da lahko vzporedno izvajate prevzeme in ohranjate porazdeljeno učenje.
-
Vgrajena odpornost - Ko trenirate več dni, ne morete tvegati, da bo poškodovani shard uničil epoho 12. Shranjevanje objektov se temu izogne že po zasnovi [2].
V bistvu je to nahrbtnik brez dna: morda je v notranjosti neurejen, ampak vse je še vedno mogoče dobiti, ko ga primeš.
Hitra primerjalna tabela za shranjevanje objektov umetne inteligence 🗂️
| Orodje / Storitev | Najboljše za (občinstvo) | Cenovni razpon | Zakaj deluje (opombe na robu) |
|---|---|---|---|
| Amazon S3 | Podjetja + ekipe, ki so usmerjene v oblak | Plačilo po porabi | Izjemno trpežna, regionalno odporna [2] |
| Shramba v oblaku Google | Znanstveniki podatkov in razvijalci strojnega učenja | Prilagodljive stopnje | Močne integracije strojnega učenja, popolnoma prilagojene oblaku |
| Shramba Azure Blob | Trgovine z veliko Microsoftovimi izdelki | Večstopenjsko (toplo/hladno) | Brezhibno delovanje z orodji za podatke in strojno učenje Azure |
| MinIO | Odprtokodne / DIY nastavitve | Brezplačno/samostojno gostovanje | Združljiv s S3, lahek, primeren za uporabo kjerkoli 🚀 |
| Vroči oblak wasabija | Stroškovno občutljive organizacije | Pavšalna cena nizka $ | Brez stroškov izhoda ali zahtevkov API (na pravilnik) [3] |
| IBM-ovo shrambo objektov v oblaku | Velika podjetja | Spreminja se | Zrel sklad z močnimi varnostnimi možnostmi za podjetja |
Vedno preverite razumnost cen glede na dejansko uporabo – zlasti glede na izhodni promet, količino zahtev in kombinacijo razredov shranjevanja.
Zakaj usposabljanje za umetno inteligenco obožuje shranjevanje predmetov 🧠
Usposabljanje ni »peščica datotek«. Gre za milijone in milijone zapisov, ki se vzporedno obdelujejo. Hierarhični datotečni sistemi se pod pritiskom velike sočasnosti upogibajo. Shranjevanje objektov se temu izogne z ravnimi imenskimi prostori in čistimi API-ji. Vsak objekt ima edinstven ključ; delavci se razpršijo in pridobivajo vzporedno. Razdrobljeni nabori podatkov + vzporedni V/I = grafični procesorji ostanejo zaposleni, namesto da čakajo.
Nasvet iz prakse: vroče delce hranite blizu računalniške gruče (v isti regiji ali coni) in agresivno shranjujte v predpomnilnik na SSD-ju. Če potrebujete skoraj neposreden dostop do grafičnih procesorjev, NVIDIA GPUDirect Storage – zmanjša število odbitkov procesorja, zmanjša zakasnitev in poveča pasovno širino neposredno do pospeševalnikov [4].
Metapodatki: Podcenjena supermoč 🪄
Tukaj se shranjevanje objektov izkaže na manj očitne načine. Ob nalaganju lahko priložite metapodatke po meri (kot je x-amz-meta-… za S3). Nabor podatkov za vizualni prikaz lahko na primer označi slike z lighting=low ali blur=high . To omogoča filtriranje, uravnoteženje ali stratifikacijo cevovodov brez ponovnega skeniranja surovih datotek [1].
In potem je tu še različicovanje . Številna skladišča objektov hranijo več različic objekta drugo ob drugi – kar je idealno za ponovljive poskuse ali politike upravljanja, ki zahtevajo razveljavitev [5].
Objekt v primerjavi z blokom v primerjavi s shranjevanjem datotek ⚔️
-
Blokovno shranjevanje : Odlično za transakcijske baze podatkov – hitro in natančno – vendar predrago za nestrukturirane podatke v petabajtnem obsegu.
-
Shranjevanje datotek : Znano, prijazno za POSIX, vendar se imeniki dušijo pri množično vzporednih obremenitvah.
-
Shranjevanje objektov : Zasnovano od temeljev za skalabilnost, vzporednost in dostop, ki ga poganjajo metapodatki [1].
Če želite nerodno metaforo: blokovno shranjevanje je omara za dokumente, shranjevanje datotek je mapa na namizju, shranjevanje predmetov pa je ... brezno z lepljivimi listki, ki ga nekako naredijo uporabnega.
Hibridni poteki dela z umetno inteligenco 🔀
Ni vedno samo v oblaku. Običajna kombinacija je videti takole:
-
Lokalno shranjevanje objektov (MinIO, Dell ECS) za občutljive ali regulirane podatke.
-
Shranjevanje objektov v oblaku za obsežne delovne obremenitve, poskuse ali sodelovanje.
To ravnovesje vpliva na stroške, skladnost s predpisi in agilnost. Videl sem že ekipe, ki so dobesedno čez noč zložile terabajte v vedro S3 samo zato, da bi zagnale začasno gručo GPU-jev, nato pa vse skupaj uničile, ko se sprint zaključi. Za manjše proračune Wasabijev model pavšalne cene/brez izstopa [3] olajša napovedovanje.
Del, s katerim se nihče ne hvali 😅
Preverjanje realnosti: ni brezhibno.
-
Zakasnitev – Če sta računalništvo in shranjevanje preveč oddaljeni narazen, se bodo vaši grafični procesorji počasi spotikali. GDS pomaga, vendar je arhitektura še vedno pomembna [4].
-
Presenečenja s stroški – stroški izhoda in zahtev API se prikradejo ljudem. Nekateri ponudniki jih opustijo (Wasabi jih; drugi ne) [3].
-
Kaos metapodatkov v velikem obsegu – Kdo definira »resnico« v oznakah in različicah? Potrebovali boste pogodbe, pravilnike in nekaj upravljavske moči [5].
Shranjevanje predmetov je infrastrukturna vodovodna napeljava: ključna, a ne glamurozna.
Kam gre 🚀
-
Pametnejše shranjevanje, ki se zaveda umetne inteligence in samodejno označuje in izpostavlja podatke prek slojev poizvedb, podobnih SQL [1].
-
Tesnejša integracija strojne opreme (poti DMA, razbremenitve omrežnih kartic), da grafični procesorji niso lačni V/I [4].
-
Transparentno, predvidljivo oblikovanje cen (poenostavljeni modeli, opustitev izstopnih stroškov) [3].
Ljudje govorijo o računalništvu kot prihodnosti umetne inteligence. Ampak realno? Ozko grlo je prav tako hitro vnašanje podatkov v modele, ne da bi pri tem porabili proračun . Zato vloga shranjevanja objektov samo še narašča.
Zaključek 📝
Shranjevanje objektov ni bleščeče, je pa temeljno. Brez skalabilnega, metapodatkovno ozaveščenega in odpornega shranjevanja se učenje velikih modelov zdi kot tek maratona v sandalih.
Torej ja – grafični procesorji so pomembni, ogrodja so pomembna. Če pa resno razmišljate o umetni inteligenci, ne prezrite, kje se hranijo vaši podatki . Verjetno shranjevanje objektov že tako potihoma ovira celotno delovanje.
Reference
[1] AWS S3 – Metapodatki objektov – sistemski in prilagojeni metapodatki
https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMetadata.html
[2] AWS S3 – Razredi shranjevanja – trajnost (»11 devetk«) + odpornost
https://aws.amazon.com/s3/storage-classes/
[3] Wasabi Hot Cloud – Cenik – pavšalna cena, brez izstopnih stroškov/stroškov API-ja
https://wasabi.com/pricing
[4] NVIDIA GPUDirect Storage – Dokumentacija – poti DMA do grafičnih procesorjev
https://docs.nvidia.com/gpudirect-storage/
[5] AWS S3 – Verzioniranje – več različic za upravljanje/ponovljivost
https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html