Microsoft Windows AI Studio. Czy nowa technologia zrewolucjonizuje branżę IT?
Dostępne w we wczesnej wersji narzędzie Windows AI Studio do rozwoju sztucznej inteligencji Microsoftu dla komputerów stacjonarnych pozwala na budowanie małych modeli językowych, które działają na komputerach osobistych i urządzeniach mobilnych.
Microsoft wykorzystał swoje wydarzenie Ignite 2023, aby zaprezentować serię narzędzi do rozwoju sztucznej inteligencji. Azure AI Studio zapewnia rozwój sztucznej inteligencji w dużej skali dla aplikacji hostowanych w chmurze, wykorzystując modele Azure OpenAI lub inne, natomiast Copilot Studio rozszerza starsze narzędzia AI Power Virtual Agents o „ulepszenia” oparte na OpenAI. Microsoft ogłosił również trzecie narzędzie, ale zajęło trochę czasu, zanim pojawiło się na komputerach programistów. To narzędzie to Windows AI Studio, dostępne teraz w wersji podglądowej.
Przedstawienie Windows AI Studio
Windows AI Studio ma na celu umożliwienie przeniesienie bibliotek modeli sztucznej inteligencji Microsoftu i jego partnerów na komputery osobiste, obecnie korzystając z procesorów graficznych (GPU), a w przyszłości także z wbudowanych akceleratorów sztucznej inteligencji, takich jak Arm i jednostki przetwarzania neuronowego Intel NPUs w najnowszych urządzeniach Surface od Microsoftu. Te jednostki NPUs po raz pierwszy pojawiły się w urządzeniu Surface Laptop Studio 2. Z planowanym wsparciem dla zintegrowanych jednostek NPUs firmy Intel w tych i innych urządzeniach już na początku 2024 roku, ta opcja powinna okazać się atrakcyjna dla programistów i innych użytkowników zainteresowanych sztuczną inteligencją.
Windows AI Studio zostało zaprojektowane, aby pomóc w treningu i dostosowywaniu modeli, przygotowując je do szerszego użycia. Po przeszkoleniu można przekonwertować modele, aby działały przy użyciu platformy ONNX (Open Neural Network Exchange) na komputerach stacjonarnych i urządzeniach mobilnych. Dostarczane jako rozszerzenie dla Visual Studio Code, Windows AI Studio pozwala na skonsolidowanie wielu różnych narzędzi i modeli sztucznej inteligencji w jednym miejscu, pracując jednocześnie z innymi narzędziami, dzięki czemu można jednocześnie udoskonalać modele i wbudowywać je w aplikacje .NET.
Windows AI Studio oferuje interesującą hybrydę narzędzi systemu Windows i Linux, pracującą zarówno na procesorze CPU, jak i GPU, przy użyciu Windows Subsystem for Linux (WSL) do hostowania i uruchamiania modeli. To podejście wymaga jednak odpowiedniego sprzętu, z dużą ilością pamięci i nowoczesnym GPU. Nie będzie można korzystać z Windows AI Studio bez oddzielnego procesora graficznego, którym może być karta klasy stacji roboczej lub zewnętrzny procesor graficzny pracujący przez połączenie Thunderbolt.
Instalacja Windows AI Studio i wymagania wstępne
Instalacja Windows AI Studio jest wystarczająco prosta. Pobierasz go ze sklepu Visual Studio Marketplace, gdzie znajdziesz również niezbędne instrukcje. Należy pamiętać, że domyślnie widok sklepu Visual Studio Marketplace w Visual Studio Code jest ustawiony na instalację wersji „wydania”release”, więc może być konieczne przełączenie widoku na wersję „przedpremierowe”pre-release”. Po dokonaniu tej zmiany możemy pobrać instalator na nasz dysk.
Istnieją pewne ważne wymagania wstępne. Potrzebujesz karty graficznej Nvidia oraz WSL działającego co najmniej na wersji Ubuntu 18.4 jako domyślnego systemu Linux. Po zainstalowaniu Windows AI Studio sprawdza obecność wsparcia dla Conda i CUDA w środowisku WSL, aby móc korzystać z karty graficznej. Jeśli te komponenty nie są zainstalowane, Windows AI Studio oferuje opcję szybkiej instalacji niezbędnych bibliotek.
Proces ten wykorzystuje opcje zdalnego serwera Visual Studio Code do wczytania i uruchomienia skryptu instalacyjnego. Jeśli chcesz zobaczyć, jak to działa, otwórz wbudowany terminal w Visual Studio Code i przejdź do widoku Output. Instalacja może potrwać trochę czasu, ponieważ zostaną pobrane i zainstalowane odpowiednie biblioteki. Oczekuj, że zajmie to co najmniej pięć minut, a znacznie więcej, jeśli korzystasz z starszego komputera. Dokumentacja Windows AI Studio jest obecnie dostępna tylko na GitHubie; platforma Microsoft Learn pokazuje jedynie stronę z zastępczym tekstem.
Twój pierwszy model w Windows AI Studio
Po zainstalowaniu, Windows AI Studio dodaje nową ikonę przypominającą układ scalony w pasku bocznym rozszerzeń Visual Studio Code. Kliknij ikonę, aby uruchomić środowisko programistyczne Windows AI Studio. Podczas uruchamiania sprawdzi, czy twoje środowisko programistyczne spełnia niezbędne wymagania wstępne. Po zakończeniu weryfikacji i ewentualnych aktualizacjach w konfiguracji WSL, rozszerzenie wczyta stronę „Co nowego” (What’s New) i wypełni panel akcji bieżącym zestawem funkcji. W najnowszej wersji podglądowej widoczne są cztery różne działania, a planowane są kolejne. Obecnie jednak działa tylko jedno – akcja dostosowywania modelu.
Dodatkowe planowane opcje obejmują Retrieval Augmented Generation (RAG), plac zabaw do pracy z modelami fundacyjnymi Phi-2 firmy Microsoft, oraz dostęp do biblioteki gotowych do użycia modeli z usług takich jak Hugging Face. Praca z modelem Phi-2 umożliwi Ci tworzenie i szkolenie własnych małych modeli językowych, bez konieczności polegania na usługach hostowanych w chmurze, takich jak Azure OpenAI.
Wsparcie dla RAG pozwoli ci wykorzystać istniejący duży model językowy i użyć go jako podstawy dla własnego niestandardowego LLM, bez konieczności ponownego szkolenia go na własnych danych. RAG wykorzystuje techniki inżynierii promptów, aby dostarczyć bardziej kompleksowego kontekstu dla LLM i uzyskać bardziej precyzyjne odpowiedzi. Korzystając z RAG, możesz wprowadzić do LLM bardziej dziedzinowe lub bardziej aktualne dane jako część promptu, współpracując z zewnętrznymi źródłami danych, w tym z informacjami specyficznymi dla twojej firmy.
Dodanie narzędzi dla RAG do Windows AI Studio powinno pomóc Ci w budowaniu i testowaniu indeksów wektorowych i osadzeń dla twoich danych. Gdy już to zrobisz, możesz zacząć rozwijać potoki oparte na wyszukiwaniu, które ugruntują Twoje aplikacje LLM, ograniczając ich odpowiedzi do własnej dziedziny za pomocą narzędzi takich jak TypeChat, Prompt Flow i Semantic Kernel.
Kwantyzacja modelu za pomocą QLoRA
Na razie ta wczesna wersja podglądowa skupia się na dostosowywaniu istniejących modeli sztucznej inteligencji, gotowych do konwersji na ONNX i wbudowania w projekty WinML. Warto skorzystać z tej funkcji samodzielnie, ponieważ stanowi ona kluczowy element dla każdego niestandardowego produktu uczenia maszynowego, gdzie chcesz, aby Twój model działał na lokalnym sprzęcie, a nie w chmurze.
Aby skonfigurować środowisko do dostosowywania modelu, zaczynasz od wyboru lokalnego folderu, a następnie wybierasz model. Pierwszy wybór jest niewielki, obejmując pięć modeli generowania tekstu dostępnych od Microsoftu, Hugging Face, Mistral AI i Meta. Tutaj Microsoft używa metody dostosowywania QLoRA: Kwantyzowanych Niskorankowych Adapterów, podejścia opracowanego na Uniwersytecie Waszyngtońskim, które wykazało imponujące wyniki. Pierwsze testy tych modeli wykazały, że osiągnięto 99,3% wydajności ChatGPT po zaledwie 24 godzinach dostosowywania na jednym GPU.
Jeśli mamy zamiar wprowadzić sztuczną inteligencję generatywną do naszych komputerów i urządzeń przenośnych, to taki rodzaj podejścia jest nam potrzebny. Nie potrzebujemy złożoności (lub wielkości) dużego modelu językowego; zamiast tego potrzebujemy tej samej wydajności na naszych własnych danych, w małym modelu językowym. QLoRA i podobne techniki stanowią sposób budowania niestandardowych sztucznych inteligencji na bazie otwartych modeli podstawowych.
Po wybraniu modelu należy kliknąć „Skonfiguruj projekt”, aby rozpocząć konfigurowanie projektu zarówno w systemie Windows, jak i WSL. Możesz wprowadzić token dostępowy do Hugging Face lub zarejestrować się, zanim będziesz mógł używać modelu. Windows AI Studio przedstawia zestaw parametrów, których będziesz używać do doskonalenia wydajności modelu. Dla testu początkowego wystarczy zaakceptować wartości domyślne i czekać, aż model zostanie wygenerowany. Istnieje również opcja użycia dodatkowych zestawów danych w celu poprawy dostosowywania.
Dostosowywanie modelu za pomocą narzędzia Olive
Po wygenerowaniu modelu zostaniesz poproszony o ponowne uruchomienie okna Visual Studio Code w środowisku roboczym Windows AI Studio. Przełączy to Cię z systemu Windows na WSL, gotowego do korzystania z narzędzi zainstalowanych podczas konfiguracji. W ramach początkowej konfiguracji twojego środowiska pracy, Windows AI Studio zainstaluje rozszerzenie Prompt Flow.
Po otwarciu obszaru roboczego modelu możesz użyć terminala Visual Studio Code do uruchomienia środowiska Conda używanego do dostosowywania modelu. Teraz możesz uruchomić narzędzie Olive, korzystając z metody QLoRA na domyślnym kontencie lub na własnym zestawie danych. Proces może potrwać pewien czas, więc przygotuj się na oczekiwanie. Nawet przy stosunkowo wydajnej karcie graficznej dostosowywanie zajmie kilka godzin.
Po zakończeniu procesu dostosowywania możesz skorzystać z prostego interfejsu internetowego Gradio, aby przetestować swój wytrenowany model, zanim go spakujesz i użyjesz go w swoich aplikacjach. Jest to ciekawe narzędzie, które jest warte uruchomienia przed i po dostosowywaniu, aby zobaczyć, jak proces wpływa na różne interakcje.
Warto pamiętać, że jest to bardzo wczesna wersja tego złożonego narzędzia. Microsoft zrobił wiele, aby uprościć pracę z modelami sztucznej inteligencji i narzędziami dostosowywania, ale nadal musisz wiedzieć, czego oczekujesz od budowanego modelu językowego. Jest wiele zmiennych, które można dostosować w trakcie procesu dostosowywania, i warto zrozumieć, co każda z nich kontroluje i jak wpływają na wynikowy model.
Na razie Windows AI Studio może być narzędziem dla ekspertów ds. sztucznej inteligencji. Niemniej jednak obiecuje wiele. W miarę ewolucji i dodawania nowych funkcji może łatwo stać się istotną częścią procesu pracy deweloperskiej na platformie Windows, zwłaszcza jeśli akceleratory sztucznej inteligencji staną się powszechnym elementem w następnej generacji komputerów osobistych.