ayshakhatun9365
Dołączył: 11 Lis 2024 Posty: 1
|
|
Tworzenie systemów produkcyjnych opartych na LLM z NVIDIA NI |
|
Wraz z szybką ekspansją modeli językowych w ciągu ostatnich 18 miesięcy, setki wariantów są teraz dostępne. Należą do nich duże modele Dane telegramu językowe (LLM) , małe modele językowe (SLM) i modele specyficzne dla domeny — wiele z nich jest swobodnie dostępnych do użytku komercyjnego. W przypadku LLM w szczególności proces dostrajania za pomocą niestandardowych zestawów danych stał się również coraz bardziej przystępny cenowo i prosty.
W miarę jak modele AI stają się tańsze i bardziej dostępne, coraz więcej rzeczywistych procesów i produktów pojawia się jako potencjalne zastosowania. Rozważ dowolny proces, który obejmuje niestrukturyzowane dane — zgłoszenia pomocy technicznej, dokumentację medyczną, raporty o incydentach, scenariusze i wiele więcej.
Dane, których to dotyczy, są często wrażliwe, a wyniki są krytyczne dla firmy. Podczas gdy LLM sprawiają, że hakowanie szybkich demonstracji jest myląco łatwe, ustanowienie właściwych procesów i infrastruktury do opracowywania i wdrażania aplikacji opartych na LLM nie jest trywialne. Nadal obowiązują wszystkie typowe obawy przedsiębiorstw, w tym:
Uzyskaj dostęp do danych, wdróż i obsługuj system w sposób bezpieczny.
Wprowadź szybkie i produktywne procesy rozwoju w całej organizacji.
Mierz i ułatwiaj ciągłe doskonalenie, ponieważ dziedzina ta rozwija się bardzo szybko.
Wdrażanie LLM w środowiskach korporacyjnych wymaga bezpiecznego i dobrze ustrukturyzowanego podejścia do infrastruktury, rozwoju i wdrażania uczenia maszynowego (ML) .
W tym poście wyjaśniono, w jaki sposób mikrousługi NVIDIA NIM i platforma Outerbounds razem umożliwiają wydajne, bezpieczne zarządzanie LLM i systemami zbudowanymi wokół nich. W szczególności skupiamy się na integrowaniu LLM w środowiskach korporacyjnych, jednocześnie przestrzegając ustalonych najlepszych praktyk ciągłej integracji i ciągłego wdrażania (CI/CD).
NVIDIA NIM zapewnia kontenery do samodzielnego hostowania mikrousług akcelerowanych przez GPU dla wstępnie wyszkolonych i dostosowanych modeli AI w chmurach, centrach danych i stacjach roboczych. Outerbounds to wiodąca platforma MLOps i AI zrodzona z Netflix, oparta na popularnym frameworku open source Metaflow .
Tworzenie aplikacji korporacyjnych opartych na LLM przy użyciu NVIDIA NIM
Znaczną część obaw dotyczących bezpieczeństwa i zarządzania danymi można łatwo złagodzić, unikając konieczności wysyłania danych do usług stron trzecich. Jest to kluczowa propozycja wartości NVIDIA NIM — mikrousług, które oferują duży wybór wstępnie zapakowanych i zoptymalizowanych, tworzonych przez społeczność LLM, możliwych do wdrożenia w prywatnym środowisku firmy.
Od czasu pierwotnego wydania NIM, Outerbounds umożliwia firmom opracowywanie aplikacji korporacyjnych opartych na LLM, a także przykładów publicznych . NIM jest teraz zintegrowany z platformą Outerbounds , umożliwiając Tobie, jako deweloperowi, bezpieczne wdrażanie w zasobach w chmurze i lokalnych . W trakcie tego Outerbounds zaczął identyfikować pojawiające się wzorce i najlepsze praktyki, szczególnie w zakresie konfiguracji infrastruktury i przepływów pracy związanych z rozwojem.
Termin „duże operacje modelu językowego” (LLMOps) został wymyślony, aby objąć wiele z tych praktyk. Jednak nie pozwól, aby nazwa Cię zmyliła. LLMOps koncentruje się na wyzwaniach zarządzania dużymi zależnościami i operacjami modelu językowego, podczas gdy MLOps rzuca szerszą sieć, obejmując szerokie spektrum zadań związanych z nadzorowaniem modeli uczenia maszynowego w różnych domenach i aplikacjach.
Wiele z omawianych tematów to sprawdzone najlepsze praktyki zapożyczone z inżynierii oprogramowania. W rzeczywistości korzystne jest rozwijanie systemów opartych na LLM przy użyciu tych samych zasad, co każde solidne oprogramowanie , ze szczególnym uwzględnieniem dodatkowych wyzwań wynikających ze stochastycznej natury LLM i poleceń języka naturalnego, a także ich unikalnych wymagań obliczeniowych.
W poniższych sekcjach podkreślono wnioski z trzech głównych obszarów, którymi musi zająć się każdy poważny system:
Produktywnych praktyk rozwojowych
Współpraca i ciągłe doskonalenie
Solidne wdrożenia produkcyjne
Te trzy obszary są integralną częścią tworzenia aplikacji korporacyjnych opartych na LLM z NVIDIA NIM. Produktywni twórcy wykorzystują mikrousługi NIM do eksperymentowania, dostrajania i bezpiecznego testowania LLM w środowiskach prywatnych. Współpraca i ciągłe doskonalenie zapewniają zespołom możliwość iterowania modeli, monitorowania wydajności i efektywnego dostosowywania się do zmian. Wdrożenia produkcyjne z NIM umożliwiają przedsiębiorstwom bezpieczne skalowanie aplikacji opartych na LLM, niezależnie od tego, czy w chmurze, czy lokalnie, zapewniając stabilność i wydajność, gdy systemy te przechodzą z fazy rozwoju do rzeczywistego użytku.
W tej dyskusji skupiono się na przypadkach użycia wsadowego, takich jak zrozumienie dokumentu, ale wiele z omawianych elementów ma zastosowanie również do przypadków użycia w czasie rzeczywistym.
Etap 1: Opracowywanie systemów wspieranych przez LLM
Pierwszy etap budowy systemów opartych na LLM koncentruje się na skonfigurowaniu produktywnego środowiska programistycznego do szybkiej iteracji i eksperymentów. Mikrousługi NVIDIA NIM odgrywają kluczową rolę, zapewniając zoptymalizowane LLM, które można wdrażać w bezpiecznych, prywatnych środowiskach. Ten etap obejmuje dostrajanie modeli, tworzenie przepływów pracy i testowanie z danymi ze świata rzeczywistego, zapewniając jednocześnie kontrolę danych i maksymalizując wydajność LLM. Celem jest ustanowienie solidnego potoku programistycznego, który obsługuje izolowane środowiska i bezproblemową integrację LLM.
Diagram przedstawiający środowisko programistyczne obejmujące stacje robocze, lokalne zasoby GPU oraz współdzieloną pulę obliczeniową obsługującą kontenery NVIDIA NIM i dodatkowe zasoby GPU.
Rysunek 1. Środowisko programistyczne z mikrousługami NVIDIA NIM
Skupiając się najpierw na fazie rozwoju, Outerbounds uznało następujące elementy za korzystne przy opracowywaniu aplikacji opartych na LLM, w szczególności w przypadku danych wrażliwych:
Działanie w obrębie Twojej chmury
Wykorzystanie lokalnych zasobów obliczeniowych w odizolowanych środowiskach programistycznych
Maksymalizacja przepustowości LLM w celu zminimalizowania kosztów
Wsparcie oceny specyficznej dla danej domeny
Dostosowywanie modeli z precyzyjnym dostrajaniem
Działaj w obrębie swojej chmury
Outerbounds pomaga wdrożyć środowisko programistyczne pokazane na Rysunku 1 na Twoim własnym koncie w chmurze, dzięki czemu możesz rozwijać aplikacje AI, zasilane przez NIM, z istniejącymi regułami i granicami zarządzania danymi. Ponadto możesz używać istniejących zasobów obliczeniowych do hostowania modeli bez konieczności płacenia dodatkowej marży za wnioskowanie LLM .
Elastyczne, odizolowane środowiska programistyczne z lokalnymi zasobami obliczeniowymi
Dwa przykłady na Rysunku 1 zapewniają osobiste środowiska programistyczne, w których możesz działać swobodnie bez ryzyka zakłócania pracy innych. Pomaga to zmaksymalizować prędkość rozwoju. NIM udostępnia interfejs API zgodny z OpenAI, który umożliwia dotarcie do prywatnych punktów końcowych przy użyciu gotowych struktur, wybierając najlepsze narzędzie do każdego zadania. Oprócz eksploracji i rozwoju w osobistych notatnikach Jupyter, możesz budować kompleksowe przepływy pracy przy użyciu otwartego kodu źródłowego Metaflow . Metaflow to biblioteka Pythona do opracowywania, wdrażania i obsługi różnych aplikacji intensywnie wykorzystujących dane, w szczególności tych obejmujących naukę o danych, ML i AI. Outerbounds rozszerza Metaflow o dekorator który ułatwia osadzanie mikrousług LLM NIM w większych przepływach pracy:
Jako programista możesz wykonywać przepływy takie jak ten lokalnie na swojej stacji roboczej, uzyskując dostęp do danych testowych i używając dowolnych mikrousług NIM dostępnych w środowisku programistycznym, szybko iterując po monitach i modelach. Aby uzyskać kompleksowy przykład obejmujący zobacz 350M Tokens Don't Lie i towarzyszący mu kod źródłowy .
_________________ Dane telegramu |
|