Odporność odgrywa kluczową rolę w rozwoju każdego obciążenia pracą i generatywna sztuczna inteligencja obciążenia nie różnią się. Projektowanie generatywnych obciążeń AI z perspektywy odporności wymaga wyjątkowych rozważań. Zrozumienie odporności i nadanie jej priorytetów ma kluczowe znaczenie, jeśli generatywne obciążenia AI spełniają wymagania dotyczące dostępności organizacyjnej i ciągłości działania. W tym poście omawiamy różne stosy obciążenia generatywnego AI i jakie należy wziąć pod uwagę te kwestie.
Generacyjna sztuczna inteligencja z pełnym stosem
Chociaż wiele emocji wokół generatywnej sztucznej inteligencji skupia się na modelach, kompletne rozwiązanie obejmuje ludzi, umiejętności i narzędzia z kilku dziedzin. Rozważmy następujący obraz, który przedstawia widok AWS na pojawiający się stos aplikacji a16z dla dużych modeli językowych (LLM).
W porównaniu z bardziej tradycyjnym rozwiązaniem opartym na sztucznej inteligencji i uczeniu maszynowym (ML), generatywne rozwiązanie AI obejmuje obecnie:
- Nowe role – Należy wziąć pod uwagę tunerów modeli, a także konstruktorów modeli i integratorów modeli
- Nowe narzędzia – Tradycyjny stos MLOps nie obejmuje typów śledzenia eksperymentów lub ich obserwowalności niezbędnych do szybkiego projektowania lub agentów, którzy odwołują się do narzędzi do interakcji z innymi systemami
Rozumowanie agenta
W przeciwieństwie do tradycyjnych modeli sztucznej inteligencji, generacja rozszerzona wyszukiwania (RAG) pozwala na dokładniejsze i kontekstowo istotne odpowiedzi poprzez integrację zewnętrznych źródeł wiedzy. Poniżej przedstawiono kilka uwag dotyczących korzystania z RAG:
- Ustawienie odpowiednich limitów czasu jest ważne dla obsługi klienta. Nic nie mówi o złym doświadczeniu użytkownika bardziej niż bycie w środku czatu i rozłączenie.
- Upewnij się, że sprawdziłeś dane wejściowe podpowiedzi i rozmiar danych wejściowych podpowiedzi dla przydzielonych limitów znaków zdefiniowanych przez Twój model.
- Jeśli wykonujesz szybką inżynierię, powinieneś zachować swoje monity w niezawodnym magazynie danych. To zabezpieczy Twoje podpowiedzi na wypadek przypadkowej utraty lub w ramach ogólnej strategii odzyskiwania po awarii.
Potoki danych
W przypadkach, gdy konieczne jest dostarczenie danych kontekstowych do modelu podstawowego przy użyciu wzorca RAG, potrzebny jest potok danych, który może pozyskać dane źródłowe, przekonwertować je na wektory osadzające i przechowywać wektory osadzające w bazie danych wektorów. Ten potok może być potokiem wsadowym, jeśli wcześniej przygotowujesz dane kontekstowe, lub potokiem o niskim opóźnieniu, jeśli na bieżąco dołączasz nowe dane kontekstowe. W przypadku wsadowym istnieje kilka wyzwań w porównaniu z typowymi potokami danych.
Źródłami danych mogą być dokumenty PDF w systemie plików, dane z systemu oprogramowania jako usługi (SaaS), takiego jak narzędzie CRM, lub dane z istniejącej wiki lub bazy wiedzy. Pozyskiwanie z tych źródeł różni się od typowych źródeł danych, takich jak dane dziennika w pliku Usługa Amazon Simple Storage (Amazon S3) dane zbiorcze lub strukturalne z relacyjnej bazy danych. Poziom równoległości, jaki można osiągnąć, może być ograniczony przez system źródłowy, dlatego należy wziąć pod uwagę ograniczanie przepustowości i zastosować techniki wycofywania. Niektóre systemy źródłowe mogą być kruche, dlatego należy wbudować obsługę błędów i logikę ponawiania prób.
Model osadzania może stanowić wąskie gardło wydajności, niezależnie od tego, czy uruchamiasz go lokalnie w potoku, czy wywołujesz model zewnętrzny. Modele osadzające to modele podstawowe, które działają na procesorach graficznych i nie mają nieograniczonej pojemności. Jeśli model działa lokalnie, musisz przypisać pracę na podstawie wydajności procesora graficznego. Jeśli model działa zewnętrznie, musisz upewnić się, że nie nasycasz modelu zewnętrznego. W obu przypadkach poziom równoległości, jaki można osiągnąć, będzie podyktowany modelem osadzania, a nie ilością procesora i pamięci RAM dostępną w systemie przetwarzania wsadowego.
W przypadku małych opóźnień należy uwzględnić czas potrzebny do wygenerowania wektorów osadzania. Aplikacja wywołująca powinna wywoływać potok asynchronicznie.
Wektorowe bazy danych
Baza danych wektorowych ma dwie funkcje: przechowuje wektory osadzające i uruchamia wyszukiwanie podobieństwa w celu znalezienia najbliższego k dopasowuje się do nowego wektora. Istnieją trzy główne typy wektorowych baz danych:
- Dedykowane opcje SaaS, takie jak Pinecone.
- Funkcje bazy danych wektorowych wbudowane w inne usługi. Obejmuje to natywne usługi AWS, takie jak Usługa Amazon OpenSearch i Amazonka Aurora.
- Opcje w pamięci, których można używać w przypadku danych przejściowych w scenariuszach o małych opóźnieniach.
W tym poście nie omawiamy szczegółowo możliwości wyszukiwania podobieństw. Chociaż są one ważne, stanowią funkcjonalny aspekt systemu i nie wpływają bezpośrednio na odporność. Zamiast tego skupiamy się na aspektach odporności wektorowej bazy danych jako systemu przechowywania:
- Utajenie – Czy baza danych wektorowych może dobrze działać przy dużym lub nieprzewidywalnym obciążeniu? Jeśli nie, aplikacja wywołująca musi obsłużyć ograniczenie szybkości, wycofanie i ponowienie próby.
- Skalowalność – Ile wektorów może pomieścić system? Jeśli przekroczysz pojemność bazy danych wektorów, będziesz musiał przyjrzeć się fragmentowaniu lub innym rozwiązaniom.
- Wysoka dostępność i odzyskiwanie po awarii – Osadzanie wektorów to cenne dane, a ich odtworzenie może być kosztowne. Czy Twoja baza danych wektorowych jest dobrze dostępna w jednym regionie AWS? Czy ma możliwość replikowania danych do innego regionu w celu odzyskiwania po awarii?
Poziom aplikacji
Podczas integracji generatywnych rozwiązań AI należy wziąć pod uwagę trzy wyjątkowe kwestie dotyczące warstwy aplikacji:
- Potencjalnie duże opóźnienia – Modele podstawowe często działają na dużych instancjach GPU i mogą mieć skończoną pojemność. Pamiętaj, aby stosować najlepsze praktyki w zakresie ograniczania szybkości, wycofywania i ponawiania prób oraz zrzucania obciążenia. Używaj projektów asynchronicznych, aby duże opóźnienia nie zakłócały głównego interfejsu aplikacji.
- Postawa bezpieczeństwa – Jeśli używasz agentów, narzędzi, wtyczek lub innych metod łączenia modelu z innymi systemami, zwróć szczególną uwagę na swój stan bezpieczeństwa. Modele mogą próbować wchodzić w interakcję z tymi systemami w nieoczekiwany sposób. Postępuj zgodnie z normalną praktyką dotyczącą dostępu z najniższymi uprawnieniami, na przykład ograniczając monity przychodzące z innych systemów.
- Szybko rozwijające się frameworki – Frameworki open source, takie jak LangChain, szybko ewoluują. Użyj podejścia mikrousług, aby odizolować inne komponenty od mniej dojrzałych platform.
Pojemność
Możemy myśleć o pojemności w dwóch kontekstach: potoki danych modelu wnioskowania i uczenia. Wydajność jest brana pod uwagę, gdy organizacje budują własne rurociągi. Wymagania dotyczące procesora i pamięci to dwa z największych wymagań przy wyborze instancji do uruchamiania obciążeń.
Instancje, które mogą obsługiwać generatywne obciążenia AI, mogą być trudniejsze do uzyskania niż przeciętny typ instancji ogólnego przeznaczenia. Elastyczność instancji może pomóc w planowaniu wydajności i wydajności. W zależności od regionu AWS, w którym uruchamiasz swoje obciążenie, dostępne są różne typy instancji.
W przypadku krytycznych podróży użytkowników organizacje będą chciały rozważyć rezerwację lub wstępną aprowizację typów instancji, aby zapewnić dostępność w razie potrzeby. Ten wzorzec zapewnia statycznie stabilną architekturę, co jest najlepszą praktyką w zakresie odporności. Aby dowiedzieć się więcej na temat stabilności statycznej w filarze niezawodności AWS Well-Architected Framework, zobacz Użyj stabilności statycznej, aby zapobiec zachowaniom bimodalnym.
Obserwowalność
Oprócz zazwyczaj zbieranych wskaźników zasobów, takich jak wykorzystanie procesora i pamięci RAM, należy uważnie monitorować wykorzystanie procesora graficznego, jeśli hostujesz model na Amazon Sage Maker or Elastyczna chmura obliczeniowa Amazon (Amazon EC2). Wykorzystanie procesora graficznego może nieoczekiwanie zmienić się, jeśli zmieni się model podstawowy lub dane wejściowe, a wyczerpanie się pamięci procesora graficznego może spowodować niestabilność systemu.
Wyżej będziesz chciał także śledzić przepływ połączeń w systemie, rejestrując interakcje między agentami i narzędziami. Ponieważ interfejs między agentami i narzędziami jest mniej formalnie zdefiniowany niż kontrakt API, należy monitorować te ślady nie tylko pod kątem wydajności, ale także w celu wychwytywania nowych scenariuszy błędów. Aby monitorować model lub agenta pod kątem wszelkich zagrożeń i zagrożeń bezpieczeństwa, możesz użyć narzędzi takich jak Amazon Guard Obowiązek.
Powinieneś także uchwycić linie bazowe wektorów osadzania, podpowiedzi, kontekstu i danych wyjściowych oraz interakcji między nimi. Jeśli zmieniają się one z biegiem czasu, może to oznaczać, że użytkownicy korzystają z systemu w nowy sposób, że dane referencyjne nie obejmują przestrzeni pytań w ten sam sposób lub że wyniki modelu nagle się zmieniły.
odzyskiwanie po awarii
Posiadanie planu ciągłości działania ze strategią odzyskiwania po awarii jest koniecznością w przypadku każdego obciążenia. Obciążenia generatywnej sztucznej inteligencji nie różnią się od siebie. Zrozumienie trybów awarii, które mają zastosowanie do Twojego obciążenia, pomoże w opracowaniu strategii. Jeśli używasz usług zarządzanych AWS do swojego obciążenia, takich jak Amazońska skała macierzysta i SageMaker, upewnij się, że usługa jest dostępna w regionie AWS odzyskiwania. W chwili pisania tego tekstu te usługi AWS nie obsługują natywnie replikacji danych w regionach AWS, dlatego należy pomyśleć o strategiach zarządzania danymi na potrzeby odzyskiwania po awarii, a także może zaistnieć potrzeba dostrojenia danych w wielu regionach AWS.
Wnioski
W tym poście opisano, jak uwzględnić odporność podczas tworzenia generatywnych rozwiązań AI. Chociaż generatywne zastosowania sztucznej inteligencji mają kilka interesujących niuansów, nadal obowiązują istniejące wzorce odporności i najlepsze praktyki. To tylko kwestia oceny każdej części generatywnej aplikacji AI i zastosowania odpowiednich najlepszych praktyk.
Więcej informacji na temat generatywnej sztucznej inteligencji i jej wykorzystania w usługach AWS można znaleźć w następujących zasobach:
O autorach
Jennifer Moran jest starszym architektem rozwiązań AWS specjalizującym się w odporności, mieszkającym w Nowym Jorku. Ma różnorodne doświadczenie, pracowała w wielu dyscyplinach technicznych, w tym w tworzeniu oprogramowania, zwinnym przywództwie i DevOps, a także jest orędowniczką kobiet w branży technologicznej. Lubi pomagać klientom w projektowaniu odpornych rozwiązań poprawiających sprężystą postawę i wypowiada się publicznie na wszystkie tematy związane z odpornością.
Randy’ego DeFauwa jest starszym głównym architektem rozwiązań w AWS. Uzyskał tytuł MSEE na Uniwersytecie Michigan, gdzie pracował nad wizją komputerową dla pojazdów autonomicznych. Posiada również tytuł MBA uzyskany na Uniwersytecie Stanowym Kolorado. Randy zajmował różne stanowiska w obszarze technologii, od inżynierii oprogramowania po zarządzanie produktem. Do przestrzeni big data wkroczył w 2013 roku i nadal eksploruje ten obszar. Aktywnie pracuje nad projektami z przestrzeni ML i występował na licznych konferencjach, m.in. Strata i GlueCon.
- Dystrybucja treści i PR oparta na SEO. Uzyskaj wzmocnienie już dziś.
- PlatoData.Network Pionowe generatywne AI. Wzmocnij się. Dostęp tutaj.
- PlatoAiStream. Inteligencja Web3. Wiedza wzmocniona. Dostęp tutaj.
- PlatonESG. Węgiel Czysta technologia, Energia, Środowisko, Słoneczny, Gospodarowanie odpadami. Dostęp tutaj.
- Platon Zdrowie. Inteligencja w zakresie biotechnologii i badań klinicznych. Dostęp tutaj.
- Źródło: https://aws.amazon.com/blogs/machine-learning/designing-generative-ai-workloads-for-resilience/
- :ma
- :Jest
- :nie
- :Gdzie
- $W GÓRĘ
- 100
- 2013
- 7
- a
- a16z
- zdolność
- O nas
- dostęp
- przypadkowo
- Konto
- dokładny
- Osiągać
- Osiąga
- w poprzek
- aktywnie
- awansować
- rzecznik
- oddziaływać
- przed
- Agent
- agentów
- zwinny
- AI
- Modele AI
- Wszystkie kategorie
- przydzielony
- pozwala
- również
- Chociaż
- Amazonka
- Amazon EC2
- Amazon Web Services
- an
- i
- Inne
- każdy
- api
- Aplikacja
- odpowiedni
- Zastosowanie
- aplikacje
- Aplikuj
- Stosowanie
- podejście
- właściwy
- architektura
- SĄ
- POWIERZCHNIA
- na około
- AS
- aspekt
- aspekty
- At
- Uwaga
- zwiększona
- autonomiczny
- pojazdy autonomiczne
- dostępność
- dostępny
- średni
- AWS
- tło
- Łazienka
- baza
- na podstawie
- BE
- bo
- jest
- BEST
- Najlepsze praktyki
- pomiędzy
- Duży
- Big Data
- Najwyższa
- szyjka
- budować
- budowniczowie
- Budowanie
- wybudowany
- biznes
- ciągłości działania
- ale
- by
- wezwanie
- powołanie
- Połączenia
- CAN
- możliwości
- Pojemność
- zdobyć
- Przechwytywanie
- walizka
- Etui
- wyzwania
- zmiana
- Zmiany
- charakter
- pogawędzić
- Wybierając
- Miasto
- dokładnie
- zbierać
- Kolorado
- w porównaniu
- kompletny
- składniki
- obliczać
- komputer
- Wizja komputerowa
- konferencje
- Podłączanie
- Rozważać
- wynagrodzenie
- Rozważania
- kontekst
- konteksty
- kontekstowy
- ciągły
- ciągłość
- umowa
- konwertować
- mógłby
- Para
- pokrywa
- pokrycie
- krytyczny
- CRM
- istotny
- klient
- doświadczenie klienta
- Klientów
- dane
- zarządzanie danymi
- Baza danych
- Bazy danych
- zdefiniowane
- W zależności
- opisane
- Wnętrze
- projektowanie
- projekty
- detal
- oprogramowania
- podyktowane
- różne
- trudny
- bezpośrednio
- katastrofa
- dyscypliny
- odłączony
- dyskutować
- inny
- do
- dokumenty
- robi
- Nie
- domeny
- nie
- każdy
- bądź
- osadzanie
- wschodzących
- Inżynieria
- zapewnić
- wpisana
- błąd
- oceny
- ewoluuje
- przykład
- przekraczać
- Podniecenie
- Przede wszystkim system został opracowany
- drogi
- doświadczenie
- eksperyment
- odkryj
- rozciągać się
- zewnętrzny
- zewnętrznie
- dodatkowy
- Brak
- Korzyści
- filet
- Znajdź
- Elastyczność
- pływ
- Skupiać
- koncentruje
- obserwuj
- następujący
- W razie zamówieenia projektu
- Formalnie
- Fundacja
- Framework
- Ramy
- od
- funkcjonalny
- Funkcje
- Ogólne
- ogólny cel
- Generować
- generacja
- generatywny
- generatywna sztuczna inteligencja
- miejsce
- GPU
- GPU
- poprowadzi
- uchwyt
- Prowadzenie
- Have
- mający
- he
- Trzymany
- pomoc
- pomoc
- Wysoki
- wysoko
- przytrzymaj
- posiada
- gospodarz
- W jaki sposób
- How To
- HTML
- http
- HTTPS
- if
- ważny
- podnieść
- in
- obejmuje
- Włącznie z
- Przybywający
- włączenie
- wskazać
- Informacja
- wkład
- przykład
- zamiast
- Integracja
- interakcji
- Interakcje
- ciekawy
- Interfejs
- ingerować
- najnowszych
- dotyczy
- IT
- Podróże
- właśnie
- wiedza
- język
- duży
- Utajenie
- Przywództwo
- UCZYĆ SIĘ
- nauka
- obiektyw
- mniej
- poziom
- lubić
- Ograniczony
- ograniczenie
- Limity
- LLM
- załadować
- lokalnie
- log
- logika
- Popatrz
- od
- Partia
- maszyna
- uczenie maszynowe
- Główny
- robić
- zarządzane
- i konserwacjami
- wiele
- zapałki
- Materia
- dojrzały
- Może..
- Poznaj nasz
- Pamięć
- metody
- Metryka
- Michigan
- mikroserwisy
- Środkowy
- ML
- MLOps
- model
- modele
- Tryby
- monitor
- jeszcze
- dużo
- wielokrotność
- musi
- rodzimy
- natywnie
- niezbędny
- Potrzebować
- potrzebne
- wymagania
- Nowości
- I Love New York
- nowy jork
- Nie
- normalna
- nic
- już dziś
- zacienienie
- liczny
- uzyskać
- of
- często
- on
- tylko
- koncepcja
- open source
- Opcje
- or
- organizacyjny
- organizacji
- Inne
- na zewnątrz
- wydajność
- koniec
- ogólny
- własny
- część
- Wzór
- wzory
- Zapłacić
- Ludzie
- wykonać
- jest gwarancją najlepszej jakości, które mogą dostarczyć Ci Twoje monitory,
- wykonywania
- obraz
- Filar
- rurociąg
- kluczowy
- krok po kroku
- planowanie
- plato
- Analiza danych Platona
- PlatoDane
- odgrywa
- wtyczki
- Pozycje
- Post
- praktyka
- praktyki
- Przygotować
- przedstawione
- zapobiec
- Główny
- ustalanie priorytetów
- przetwarzanie
- Produkt
- zarządzanie produktem
- projektowanie
- monity
- zapewniać
- publicznie
- cele
- położyć
- pytanie
- szmata
- RAM
- nośny
- szybko
- Kurs
- raczej
- regeneracja
- odnosić się
- odniesienie
- Bez względu
- region
- regiony
- związane z
- niezawodność
- rzetelny
- replikacja
- wymagania
- sprężystość
- sprężysty
- Zasób
- Zasoby
- Odpowiedzi
- ograniczające
- wyszukiwanie
- ryzyko
- Rola
- run
- bieganie
- działa
- SaaS
- sagemaker
- taki sam
- mówią
- scenariusze
- Szukaj
- poszukiwania
- bezpieczeństwo
- zagrożenia bezpieczeństwa
- senior
- usługa
- Usługi
- kilka
- sharding
- ona
- rozsiewanie światła
- powinien
- Prosty
- pojedynczy
- Rozmiar
- umiejętności
- So
- Tworzenie
- Oprogramowanie jako usługa
- rozwoju oprogramowania
- Inżynieria oprogramowania
- rozwiązanie
- Rozwiązania
- kilka
- Źródło
- Źródła
- Typ przestrzeni
- Mówi
- specjalista
- Stabilność
- stabilny
- stos
- Półki na książki
- Stan
- statyczny
- Nadal
- przechowywanie
- sklep
- strategie
- Strategia
- zbudowany
- taki
- wsparcie
- pewnie
- system
- systemy
- Brać
- trwa
- taksonomia
- tech
- Techniczny
- Techniki
- Technologia
- niż
- że
- Połączenia
- Źródło
- ich
- Im
- Tam.
- Te
- one
- myśleć
- to
- tych
- zagrożenia
- trzy
- Przez
- poziom
- czas
- do
- narzędzie
- narzędzia
- tematy
- Wyśledzić
- Śledzenie
- tradycyjny
- Trening
- próbować
- drugiej
- rodzaj
- typy
- typowy
- zazwyczaj
- zrozumienie
- Nieoczekiwany
- wyjątkowy
- uniwersytet
- nieograniczone
- nieobliczalny
- posługiwać się
- używany
- Użytkownik
- Doświadczenie użytkownika
- Użytkownicy
- za pomocą
- UPRAWOMOCNIĆ
- Cenny
- różnorodność
- Pojazdy
- Zobacz i wysłuchaj
- wizja
- chcieć
- Droga..
- sposoby
- we
- sieć
- usługi internetowe
- DOBRZE
- Co
- jeśli chodzi o komunikację i motywację
- czy
- który
- będzie
- w
- Kobieta
- Praca
- pracował
- pracujący
- pisanie
- york
- You
- Twój
- zefirnet