Bu podcast’te NetApp’in İngiltere ve İrlanda çözüm direktörü Grant Caley ile yapay zeka (AI) ve veri depolama konularına bakıyoruz.
Depolama ölçeklenebilirliği ve performansının yanı sıra hibrit bulut, üç hiper ölçekleyicinin tümüne erişim ve çıkarım çalıştırmalarından önce tartışma için verileri taşıma, kopyalama ve klonlama yeteneği ihtiyacından bahsediyor.
Caley ayrıca uygulama programlama arayüzü (API) entegrasyonunun, Kubernetes’e bağlanabilen standart bir veri katmanının, Python ile entegrasyonun, Kafka ve Nvidia mikro servisleri gibi iş akışı platformlarının ve NIM ve NEMO gibi çerçevelerin önemini de anlatıyor.
Antony Adshead: Depolama açısından bakıldığında yapay zeka iş yüklerinin farkı nedir?
Grant Caley: Geleneksel kurumsal iş yükleri, bu iş yükünün özellikleri ve gereksinimleri açısından oldukça iyi tanımlanmıştır.
Yapay zekada ise durum tamamen farklı. Yapay zeka, geliştirme açısından çok küçük bir boyutta başlar, ancak yalnızca şirket içi değil bulutu da kapsayan çok petabaytlık üretim tesislerine hızla ölçeklenebilir.
Yapay zeka iş yükü perspektifinden baktığınızda, bu neredeyse tamamen bir tür silolanmış, odaklanmış kurumsal uygulamadan farklıdır. Bu, farklı performans gereksinimleriyle başa çıkmanız gerektiği anlamına gelir. Veri perspektifinden bakıldığında yapay zeka için barındırmanız gereken kapasiteler, sadece gigabaytlardan petabaytlarca veriye kadar uzanır ve bu da kendi zorluklarını beraberinde getirir.
Yapay zeka iş yükü açısından bakıldığında, genellikle büyük veri kümelerini idare etmeniz, onları taşımanız, klonlamanız, kopyalamanız, temizleme ve girdi için hazırlamanız ve sonra çıkarım yapmak için kullanmanız gerekir.
AI ile ilgili gereksinimler etrafında dönen çok fazla yüksek bakım var. Ve bir diğer ilginç gerçek ise artık AI’nın sadece şirket içi bir oyun olmadığını görüyoruz. AWS [Amazon Web Services]Azure ve Google Play de.
Müşteriler, yapay zekayı sunmak için tüm bu ortamları ve veri merkezlerini geliştiriyor ve kullanıyor. Ve son zamanlarda gördüğümüz kadarıyla, yapay zeka şirketin IP’si, kullandığı veri ve ürettiği çıktı haline geliyor. Yapay zeka etrafında gelen bazı yasalar nedeniyle, bu verilerin güvenliği kritik önem taşıyor, verileri kanıtlayabilmek, kontrol edebilmek, versiyonlayabilmek.
Tüm bunlar, ona nasıl davranmamız gerektiği konusunda büyük bir fark yaratıyor. Ve sonra nihayetinde, genel olarak AI’ya herhangi bir kurumsal iş yüküyle karşılaştırıldığında, gerçek iş akışı gerçekten karmaşıktır ve bunu AI için nasıl teslimat yaptığınıza dahil etmeniz gerekir. Yani, AI bağlamında iş yükleri hakkında farklı olan çok şey oluyor.
Depolamanın yapay zeka iş yükleriyle başa çıkabilmesi için neye ihtiyacı var?
Caley: Bir bakıma son verdiğim cevaba dayanıyor. Müşteriler yapay zekayı geliştirmeye başladıkça genellikle bulutta başlarlar çünkü araç setleri (platformlar) oradadır ve ortam oluşturmak için çok fazla para harcamak zorunda kalmazlar. Bu nedenle buluttan yararlanabilmeniz gerekir.
Ancak aynı şekilde, birçok müşteri bunu şirket içinde yapıyor. Küçük GPU’lar oluşturuyorlar [graphics processing unit] sunuculardaki platformlar, daha büyük DGX veya Nvidia SuperPod’lara ve bu tür yapılandırmalara dönüşüyorlar.
Tüm bunların altında depolama perspektifinden anahtar nokta, elde etmeye çalıştıkları sonuçları yönlendiren verilerdir. İster buluttaki erken geliştirme aşamaları olsun, ister şirket içi ilk adım üretimine geçmek olsun, verileri gerçekten ihtiyaç duyulan yere çıkarım için nasıl dışarı attıkları olsun.
Bunlar küçük fabrikalar, uzak siteler veya her ne olursa olsun olabilir. Dolayısıyla, depolama katmanından gelen veri taşınabilirliği aslında çok önemlidir ve bu, bu kullanım durumlarının her biri için depolama siloları oluşturmamanız gerektiği anlamına gelir.
Gerçekten bu kullanım durumlarını aşmaya ve veri hareketliliği sağlayan bir şey sunmaya çalışmalısınız. Eskiden bir veri yapısı sunmaktan bahsediyorduk, ancak gerçekten önemli olan bu tür bir bağlantıdır.
Bence AI için diğer bir şey de, eğitimin ilk erken aşamalarını yaparken düşük performansla başlaması, ancak bunun hızla ölçeklenebilmesidir.
Yani, performans büyük bir etkendir. Depolamanın küçük gereksinimlerden üretime ve ölçek gereksinimlerine kadar her şeyi karşılayabileceğini bilmeniz gerekir. Ve birçok şirket üretime geçtiklerinde bunu unutur. Farklı depolama türlerinden oluşan bu siloları oluşturdular, nihayetinde bir noktada bunları önemli ölçüde ölçeklendirmeleri gerekeceğini fark etmeden.
Ve ölçek, depolamanın sunması gereken bir diğer faktördür. Dediğim gibi, ilk günlerde gigabaytlarca olabilir, ancak şirketler eğitim değerini ve sunabilecekleri sonuçları en üst düzeye çıkarmak için veri kümelerini bir araya getirdikçe hızla petabaytlara dönüşebilir.
Ama tabii ki veriler şirketin IP’sidir.
Bunu sıfır güven yönetimi sağlayan bir depolama altyapısına yerleştirmeniz gerekiyor. [So] O [it] verilerin güvenlik şifrelemesini sağlar, bu da eğer sürümleme yapıyorsanız ve kanıta dayalı bir şey yapıyorsanız, [work] – bu sonuçların değiştirilemez veya silinemez olması, verilerin olduğu gibi ve hangi aşamalardan geçtiğini kanıtlayabilmenizi sağlar.
Yapmanız gereken çok şey var. Ve bence veri depolamanın sunması gereken son şey, müşterinin kullanmak istediği tüm araçlara entegrasyon sunabilmenizdir.
Kubernetes iş yüklerine bakıyorlar ve bunları Kubernetes aracılığıyla dağıtıyorlar. Bulutta şirket içi farklı çerçeveler kullanmayı düşünüyorlar. Depolama katmanınız, eğer gerçek değer sunacaksa, depolama katmanının kendisinden sağlanabilecek yetenekleri en üst düzeye çıkarmak için API’nin tüm bu farklı ortamlara entegre olabilmesi gerekir.
Depolama türleri
Verilerin yapay zeka için tutulma yollarına baktığımızda (vektörler gibi veri türleri, kontrol noktası ihtiyaçları, TensorFlow ve PyTorch gibi kullanılan çerçeveler) verileri depolamada tutma şeklimizi, depolama türünü belirleyen herhangi bir şey var mı?
Caley: Sanırım birkaç şey var. Birincisi, yapay zeka topluluğunun pek çok standarda uymamasıdır. Her geliştiricinin veya veri bilimcinin kullanmayı tercih ettiği kendi araç seti vardır.
Ancak bu şeyler üretime ölçeklendikçe, “Tamam, bu çerçeveleri kullanacağız, bu teknolojileri kullanacağız.” şeklinde standartları dayatmaya başlıyorsunuz. Ve sonuç olarak, altta bulunan depolama katmanının tüm bunları barındırabilmesi gerekiyor. Aksi takdirde, farklı müşteri türleri ve farklı kullanım senaryoları için farklı türde gereksinimler satın almış olursunuz.
Kesinlikle önemli olan, veri depolamanın başlangıç için Kubernetes platformuna entegre edilebilmesidir. PyTorch ve TensorFlow gibi çoğu sonuç, ortamlarını ölçeklendirmek için Kubernetes’i kullanıyor; bu nedenle otomatik ve kusursuz bir yeteneğin önemli olmasını sağlamak için Kubernetes’e entegre olmak.
Ancak başka araç setleri de var. Python’dan yararlanan birçok geliştirme işlemi için buna API entegrasyonu yapmanız gerekir. Müşterilerimiz için bunu kolaylaştırmak amacıyla Python entegrasyonuna yönelik kendi araç kitlerimizi geliştirdik.
Ancak yapay zeka etrafında Kafka gibi yardımcı teknolojiler ve veri akışlarını, veri temizlemeyi, veri temizlemeyi, işlemeyi vb. nasıl yaptığınız da var.
Tüm bunlar, depolama özelliklerini müşterilerin sahip olduğu farklı araçlara entegre edebilirse depolamanın getirebileceği avantajlardan faydalanabilir – anında klonlama, anında kontrol noktası, anında geri alma gibi. Esnekliğe ihtiyacınız var çünkü yapay zeka için şirket içinde, uçta ve bulutta teslimat yapabilmeniz gerekiyor.
Örneğin NetApp gibi standartlaştırılmış bir veri katmanına sahip olmak, bu karmaşıklığın azaltılmasına gerçekten yardımcı olabilir.
Veri güvenliğine geri dönüyoruz. Yapay zeka konusunda bize sorulan en önemli önceliklerden biri, özellikle de son zamanlarda gündeme getirilen birçok mevzuatla birlikte – bu verileri güvence altına alabilir miyiz? Sıfır güveni koyabilir miyiz? Bunu kullanılabilir ve yüksek düzeyde kullanılabilir hale getirebilir miyiz? Bunların hepsi araçlara, çerçevelere bağlı olarak dikkate almanız gereken endişelerdir.
Hangi araçları veya çerçeveleri kullandığınızın pek bir önemi yok. Bu tür şeylerin hepsi önemli. Nemo’ya entegre etmek, Jupyter notebook’lara entegre etmek, GPU’yu Nvidia, Python, Kubeflow ile doğrudan entegre etmek, tüm bu teknolojiler.
Depolama katmanı bunlara entegre olabilir ve buna değer katabilirse, bu, karmaşıklığın azaltılmasına büyük ölçüde yardımcı olur ve müşteri için pazara daha iyi çıkış sonuçları sağlar.