PRZEWODNIK techniczny

Ray dla rozproszonej sztucznej inteligencji

Ray to platforma typu open source, która ułatwia skalowanie obciążeń Pythona i sztucznej inteligencji z laptopa na klaster tysięcy maszyn.

2 minuty czytaniaOstatnia aktualizacja

Przegląd

It matters because it gives a simple, unified way to distribute training, tuning, data processing, and serving without rewriting your code for each.

Głębokie nurkowanie

Podstawową ideą Raya jest przekształcenie zwykłych funkcji i klas Pythona w jednostki rozproszone przy minimalnych zmianach. Funkcja oznaczona jako zdalne „zadanie” działa asynchronicznie na dowolnym procesie roboczym w klastrze; klasa oznaczona jako zdalny „aktor” staje się usługą stanową utrzymującą się z pracownika. Ray zwraca lekkie kontrakty futures (odniesienia do obiektów) i obsługuje planowanie, przenoszenie danych za pośrednictwem magazynu obiektów współdzielonych oraz odporność na błędy. Oprócz tego rdzenia znajdują się specjalnie zaprojektowane biblioteki: Ray Train do uczenia modeli rozproszonych, Ray Tune do wyszukiwania hiperparametrów, Ray Data do strumieniowych potoków danych, RLlib do uczenia się przez wzmacnianie i Ray Serve do udostępniania skalowalnych modeli. Dzięki temu jeden klaster może obsłużyć cały przepływ pracy ML od początku do końca.

Wgląd techniczny

Kluczowymi elementami pierwotnymi są zadania (bezstanowe, równoległe wywołania funkcji) i aktorzy (stanowe procesy robocze, które przechowują takie rzeczy, jak załadowany model lub licznik). Kiedy wywołujesz zadanie zdalne, Ray natychmiast zwraca przyszłość i planuje pracę na dostępnych procesorach/GPU; wywołujesz ray.get() w celu pobrania wyników. Rozproszona składnica obiektów w pamięci z pamięcią współdzieloną z zerową kopią skutecznie przenosi duże obiekty, takie jak tablice, między procesami roboczymi, unikając powtarzającej się serializacji i przyspieszając potoki AI obciążone dużą ilością danych.

Wpływ strategiczny

Koszt i budżet

Decyzje dotyczące architektury wpływają na wydajność i koszty operacyjne przez lata.

Jaśniejsze decyzje

Edukacja techniczna pomaga zespołom wybrać odpowiedni stos, a nie tylko najnowszy.

Kontrola jakości

Lepsze wybory inżynieryjne zmniejszają liczbę incydentów związanych z niezawodnością w produkcji.

Przyszłość Ray dla rozproszonej sztucznej inteligencji

Ray stał się podstawą wielkoskalowej sztucznej inteligencji, wykorzystywanej zwłaszcza do szkolenia i obsługi dużych modeli językowych. Spodziewaj się rozwoju obsługi specyficznej dla LLM (Ray Serve z vLLM), heterogenicznego planowania GPU, ściślejszej integracji z jeziorami danych i Kubernetes za pośrednictwem KubeRay oraz lepszego automatycznego skalowania w przypadku gwałtownych obciążeń generatywnych. W miarę rozwoju modeli rola Raya w organizowaniu uczenia wielowęzłowego, potoków RLHF i wnioskowania wsadowego w tysiącach akceleratorów będzie prawdopodobnie rosnąć.

Implementacja w świecie rzeczywistym

Uruchamianie aplikacji Ray Tune w celu równoległego przeszukiwania setek kombinacji hiperparametrów w klastrze GPU w celu znalezienia najlepszej konfiguracji modelu

Używanie Ray Train do dystrybucji uczenia modelu głębokiego uczenia się na wiele procesorów graficznych i węzłów przy minimalnych zmianach kodu

Tworzenie potoku wnioskowania wsadowego za pomocą Ray Data w celu gromadzenia milionów rekordów poprzez przesyłanie strumieniowe ich przez model w klastrze

Wdrażanie wielu modeli w jednym punkcie końcowym z funkcją automatycznego skalowania za pomocą usługi Ray Serve do obsługi zmiennego ruchu produkcyjnego

Zagrożenia i poręcze

Optymalizacja jednego testu porównawczego może ukryć szersze słabości systemu.

Koszty infrastruktury i utrzymania są często niedoszacowane.

W miarę jak systemy stają się coraz bardziej złożone, luki w bezpieczeństwie i obserwowalności mogą się zwiększać.

Plan wdrożenia

1

Przed wdrożeniem zdefiniuj docelowe opóźnienia, jakość i koszty.

2

Test porównawczy w realistycznych warunkach obciążenia i danych.

3

Monitorowanie przyrządu pod kątem błędów, dryftu i wpływu użytkownika.

4

Przed skalowaniem przygotuj ścieżki wycofywania zmian i reakcji na incydenty.

Odkrywaj dalej

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Ray for Distributed AI quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Rozpocznij quiz

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Następny poradnik

Gradientowe punkty kontrolne

Często zadawane pytania

What is Ray for Distributed AI?

Ray to platforma typu open source, która ułatwia skalowanie obciążeń Pythona i sztucznej inteligencji z laptopa na klaster tysięcy maszyn. Ma to znaczenie, ponieważ zapewnia prosty, ujednolicony sposób dystrybucji szkoleń, dostrajania, przetwarzania danych i udostępniania bez konieczności przepisywania kodu dla każdego z nich.

Jaki problem rozwiązuje przede wszystkim Ray?

Ray zapewnia ujednolicony, prosty sposób dystrybucji obliczeń na wiele maszyn bez konieczności przepisywania kodu dla każdego typu obciążenia.

Jaka jest w przypadku Raya różnica między „zadaniem” a „aktorem”?

Zadania to bezstanowe, zdalne funkcje uruchamiane równolegle, a aktorzy to długotrwałe obiekty, które przechowują stan, jak załadowany model.

Co Ray zwraca natychmiast po uruchomieniu zadania zdalnego?

Ray natychmiast przywraca lekką przyszłość, więc praca przebiega asynchronicznie; wywołujesz metodę ray.get(), aby w razie potrzeby pobrać rzeczywisty wynik.

Która biblioteka Ray jest przeznaczona do rozproszonego wyszukiwania hiperparametrów?

Ray Tune specjalizuje się w równoległym prowadzeniu wielu testów hiperparametrycznych w klastrze.

W jaki sposób składnica obiektów Ray sprawia, że potoki AI przetwarzające duże ilości danych są wydajne?

Współdzielona składnica obiektów w pamięci wykorzystuje odczyty zerowe, dzięki czemu pracownicy mogą uzyskać dostęp do dużych tablic bez kosztownej ponownej serializacji.