Niedawny rozwój głębokiego uczenia się doprowadził do powstania coraz większych modeli, takich jak GPT-3, BLOOM i OPT, z których niektóre mają już ponad 100 miliardów parametrów. Chociaż większe modele są zwykle bardziej wydajne, szkolenie takich modeli wymaga znacznych zasobów obliczeniowych. Nawet przy użyciu zaawansowanych rozproszonych bibliotek szkoleniowych, takich jak FSDP i DeepSpeed, często zadania szkoleniowe wymagają setek akceleratorów przez kilka tygodni lub miesięcy.
Pod koniec 2022 roku AWS ogłosił ogólną dostępność Instancje Amazon EC2 Trn1 zasilany przez Szkolenie AWS— specjalnie skonstruowany akcelerator uczenia maszynowego (ML) zoptymalizowany pod kątem zapewnienia wydajnej, ekonomicznej i skalowalnej platformy do szkolenia modeli głębokiego uczenia się w chmurze. Instancje Trn1 są dostępne w wielu rozmiarach (patrz poniższa tabela), z maksymalnie 16 akceleratorami Trainium na instancję.
Rozmiar instancji | Akceleratory Trainium | Pamięć akceleratora (GB) | vCPU | Pamięć instancji (GiB) | Przepustowość sieci (Gb/s) |
trn1.2xduży | 1 | 32 | 8 | 32 | Do 12.5 |
trn1.32xduży | 16 | 512 | 128 | 512 | 800 |
trn1n.32xlarge (wkrótce) | 16 | 512 | 128 | 512 | 1600 |
Instancje Trn1 mogą być wdrażane jako samodzielne instancje do mniejszych zadań szkoleniowych lub w wysoce skalowalnych ultraklastrach, które obsługują rozproszone szkolenie w dziesiątkach tysięcy akceleratorów Trainium. Wszystkie instancje Trn1 obsługują konfigurację autonomiczną, podczas gdy ultraklastry Trn1 wymagają instancji trn1.32xlarge lub trn1n.32xlarge. W ultraklasterze wiele instancji Trn1 jest zlokalizowanych wspólnie w danej strefie dostępności AWS i jest połączonych z szybką siecią Elastic Fabric Adapter (EFA) o małych opóźnieniach, która zapewnia 800 Gb/s nieblokującej przepustowości sieci na instancję dla zbiorowych operacji obliczeniowych . Typ instancji trn1n.32xlarge, który zostanie uruchomiony na początku 2023 r., zwiększy tę przepustowość do 1600 Gb/s na instancję.
Wielu klientów korporacyjnych decyduje się na wdrażanie obciążeń głębokiego uczenia się przy użyciu Kubernetes — de facto standardu orkiestracji kontenerów w chmurze. Klienci AWS często wdrażają te obciążenia za pomocą Elastyczna usługa Amazon Kubernetes (Amazon EKS). Amazon EKS to zarządzana usługa Kubernetes, która upraszcza tworzenie, konfigurowanie, cykl życia i monitorowanie klastrów Kubernetes, oferując jednocześnie pełną elastyczność upstream Kubernetes.
Dziś z przyjemnością ogłaszamy oficjalne wsparcie dla rozproszonych zadań szkoleniowych przy użyciu instancji Amazon EKS i EC2 Trn1. Dzięki temu ogłoszeniu możesz teraz łatwo uruchamiać kontenerowe zadania szkoleniowe na dużą skalę w Amazon EKS, jednocześnie w pełni wykorzystując stosunek ceny do wydajności, skalowalności i łatwości użytkowania oferowanej przez instancje Trn1.
Wraz z tym ogłoszeniem publikujemy również szczegółowy samouczek, który przeprowadzi Cię przez kroki wymagane do uruchomienia rozproszonego zadania szkoleniowego obejmującego wiele instancji (trening wstępny fazy 1 BERT) przy użyciu instancji Amazon EKS i Trn1. W tym poście poznasz architekturę rozwiązania i przejrzysz kilka kluczowych kroków z samouczka. Patrz oficjalne repozytorium samouczków dla pełnego, kompleksowego przepływu pracy.
Kontynuując, szeroka znajomość podstawowych usług AWS, takich jak Elastyczna chmura obliczeniowa Amazon (Amazon EC2) i Amazon EKS są sugerowane, a podstawowa znajomość głębokiego uczenia i PyTorch byłaby pomocna.
Architektura rozwiązania
Poniższy schemat ilustruje architekturę rozwiązania.
Rozwiązanie składa się z następujących głównych elementów:
- Klaster EKS
- Grupa węzłów EKS składająca się z instancji trn1.32xlarge
- Połączenia Neuron AWS SDK
- Wtyczki EKS dla Neuron i EFA
- An Rejestr elastycznego pojemnika Amazon (Amazon ECR) Repozytorium
- Obraz kontenera szkoleniowego
- An Amazon FSx dla Luster System plików
- Harmonogram wsadowy Volcano i serwer itp
- Uniwersalne narzędzie do uruchamiania zadań TorchX
- Moduł TorchX DDP dla Trainium
Sercem rozwiązania jest klaster EKS, który zapewnia podstawowe funkcje zarządzania Kubernetes za pośrednictwem punktu końcowego usługi EKS. Jedną z zalet Amazon EKS jest to, że usługa aktywnie monitoruje i skaluje płaszczyznę sterowania na podstawie obciążenia, co zapewnia wysoką wydajność w przypadku dużych obciążeń, takich jak szkolenia rozproszone. Wewnątrz klastra EKS znajduje się grupa węzłów składająca się z dwóch lub więcej instancji opartych na trn1.32xlarge Trainium znajdujących się w tej samej strefie dostępności.
Neuron SDK to zestaw oprogramowania, który zapewnia sterownik, kompilator, środowisko uruchomieniowe, integrację z platformą (na przykład PyTorch Neuron) oraz narzędzia użytkownika, które umożliwiają dostęp do zalet akceleratorów Trainium. Sterownik urządzenia Neuron działa bezpośrednio na węzłach EKS (instancje Trn1) i zapewnia dostęp do chipów Trainium z poziomu kontenerów szkoleniowych uruchamianych na węzłach. Wtyczki Neuron i EFA są instalowane w klastrze EKS, aby zapewnić dostęp do chipów Trainium i urządzeń sieciowych EFA wymaganych do szkolenia rozproszonego.
Repozytorium ECR służy do przechowywania obrazów kontenerów szkoleniowych. Te obrazy zawierają Neuron SDK (z wyłączeniem sterownika Neuron, który działa bezpośrednio na instancjach Trn1), skrypt szkoleniowy PyTorch i wymagane zależności. Kiedy zadanie szkoleniowe jest uruchamiane w klastrze EKS, obrazy kontenerów są najpierw pobierane z Amazon ECR do węzłów EKS, a następnie tworzone są kontenery robocze PyTorch z obrazów.
Pamięć współdzielona jest zapewniana przy użyciu wydajnego systemu plików FSx for Luster, który istnieje w tej samej strefie dostępności, co instancje trn1.32xlarge. Tworzenie i dołączanie systemu plików FSx for Luster do klastra EKS odbywa się za pośrednictwem Amazon FSx dla sterownika Luster CSI. W tym rozwiązaniu pamięć współdzielona jest używana do przechowywania zestawu danych szkoleniowych oraz wszelkich dzienników i artefaktów utworzonych podczas procesu uczenia.
Rozwiązanie korzysta z Uniwersalne narzędzie do uruchamiania zadań TorchX uruchomienie rozproszonych zadań szkoleniowych w ramach Amazon EKS. TorchX ma dwie ważne zależności: harmonogram wsadowy Volcano i serwer etcd. Volcano obsługuje planowanie i kolejkowanie zadań szkoleniowych, podczas gdy serwer etcd jest magazynem klucz-wartość używanym przez TorchElastic do synchronizacji i wykrywania równorzędnych podczas uruchamiania zadania.
Gdy zadanie szkoleniowe jest uruchamiane za pomocą TorchX, polecenie uruchamiania wykorzystuje dostarczony rozproszony moduł DDP TorchX dla Trainium w celu skonfigurowania ogólnego zadania szkoleniowego, a następnie uruchamia odpowiednie polecenia torchrun na każdym z modułów roboczych PyTorch. Gdy zadanie jest uruchomione, można je monitorować za pomocą standardowych narzędzi Kubernetes (takich jak kubectl) lub za pomocą standardowych zestawów narzędzi ML, takich jak TensorBoard.
Omówienie rozwiązania
Przyjrzyjmy się ważnym krokom tego rozwiązania. W całym tym przeglądzie odwołujemy się do Uruchom wielowęzłowe zadanie treningowe neuronów PyTorch na Trainium przy użyciu TorchX i EKS samouczek na GitHubie.
Utwórz klaster EKS
Aby rozpocząć pracę z rozproszonymi zadaniami szkoleniowymi w Amazon EKS z instancjami Trn1, należy najpierw utworzyć klaster EKS zgodnie z opisem w samouczek na GitHub. Tworzenie klastrów można osiągnąć za pomocą standardowych narzędzi, takich jak eksctl
i Tworzenie chmury AWS.
Utwórz grupę węzłów EKS
Następnie musimy utworzyć grupę węzłów EKS zawierającą co najmniej dwie instancje trn1.32xlarge w obsługiwanym regionie. W samouczku AWS CloudFormation służy do tworzenia szablonu uruchamiania EC2 specyficznego dla Trainium, co gwarantuje, że instancje Trn1 zostaną uruchomione z odpowiednim Amazon Machine Image (AMI) i poprawną konfiguracją sieci EFA potrzebną do obsługi rozproszonego szkolenia. AMI zawiera również sterownik urządzenia Neuron, który zapewnia obsługę chipów akceleratorów Trainium. z eksctl
Narzędzie do zarządzania Amazon EKS umożliwia łatwe tworzenie grupy węzłów Trainium przy użyciu podstawowego manifestu YAML, który odwołuje się do nowo utworzonego szablonu uruchamiania. Na przykład:
W powyższym manifeście skonfigurowano kilka atrybutów, aby umożliwić korzystanie z wystąpień Trn1 w klastrze EKS. Pierwszy, metadata.region
jest ustawiona na jeden z regionów obsługujących wystąpienia Trn1 (obecnie us-east-1
i us-west-2
). Następnie w przypadku stref dostępności Amazon EKS wymaga określenia dwóch stref dostępności. Jedna z tych Stref Dostępności musi obsługiwać instancje Trn1, podczas gdy druga może być wybrana losowo. Samouczek pokazuje, jak to zrobić określ, które Strefy Dostępności pozwolą na instancje Trn1 na Twoim koncie AWS. Tę samą strefę dostępności obsługującą Trn1 należy również określić za pomocą availabiltyZones
atrybut powiązany z grupą węzłów EKS. efaEnabled
jest ustawione na true
skonfigurować węzły z odpowiednią konfiguracją sieci EFA, która jest wymagana do szkolenia rozproszonego. Wreszcie, launchTemplate.id
atrybut powiązany z grupą węzłów wskazuje na szablon uruchamiania EC2 utworzony za pomocą AWS CloudFormation we wcześniejszym kroku.
Zakładając, że zastosowałeś już szablon CloudFormation i zainstalowałeś eksctl
narzędzie do zarządzania, możesz utworzyć grupę węzłów EKS obsługującą Trainium, uruchamiając następujący kod:
Zainstaluj wtyczki Kubernetes dla urządzeń Trainium i EFA
Po utworzeniu grupy węzłów następnym krokiem jest instalacja wtyczek Kubernetes, które zapewniają obsługę akceleratorów Trainium (poprzez wtyczkę Neuron) oraz urządzeń EFA (poprzez wtyczkę EFA). Wtyczki te można łatwo zainstalować na klastrze przy użyciu standardu kubectl
narzędzie do zarządzania, jak pokazano w samouczku.
Aby użyć uniwersalnego programu uruchamiającego PyTorch TorchX do uruchamiania rozproszonych zadań szkoleniowych, wymagane są dwa wymagania wstępne: harmonogram wsadowy Volcano i serwer etcd. Podobnie jak wtyczki Neuron i EFA, możemy użyć kubectl
narzędzie do instalacji Volcano i serwera etcd na klastrze EKS.
Dołącz udostępnioną pamięć masową do klastra EKS
W samouczku FSx for Luster jest używany do udostępniania współdzielonego systemu plików o wysokiej wydajności, do którego mogą uzyskiwać dostęp różne moduły robocze EKS. Ten udostępniony magazyn jest używany do hostowania zestawu danych szkoleniowych, a także wszelkich artefaktów i dzienników tworzonych podczas procesu uczenia. W samouczku opisano sposób tworzenia i dołączania udostępnionego magazynu do klastra przy użyciu Amazon FSx dla sterownika Luster CSI.
Utwórz obraz kontenera szkoleniowego
Następnie musimy utworzyć obraz kontenera szkoleniowego, który zawiera skrypt szkoleniowy PyTorch wraz z wszelkimi zależnościami. Przykładowy plik Dockerfile jest zawarty w samouczku, który zawiera skrypt wstępnego szkolenia BERT wraz z jego zależnościami programowymi. Dockerfile jest używany do budowania obrazu kontenera szkoleniowego, a następnie obraz jest przesyłany do repozytorium ECR, z którego pracownicy PyTorch mogą pobrać obraz, gdy w klastrze zostanie uruchomione zadanie szkoleniowe.
Skonfiguruj dane treningowe
Przed uruchomieniem zadania treningowego dane treningowe są najpierw kopiowane do współdzielonego woluminu pamięci w FSx for Lustre. W samouczku opisano, jak utworzyć tymczasowy pod Kubernetes, który ma dostęp do udostępnionego woluminu magazynu, i pokazuje, jak zalogować się do pod w celu pobrania i wyodrębnienia zestawu danych szkoleniowych przy użyciu standardowych poleceń powłoki systemu Linux.
Mając różne wymagania wstępne dotyczące infrastruktury i oprogramowania, możemy teraz skupić się na aspektach rozwiązania Trainium.
Wstępnie skompiluj swój model
Neuron SDK obsługuje PyTorch poprzez warstwę integracyjną o nazwie Neuron PyTorch. Domyślnie PyTorch Neuron działa z kompilacją just-in-time, w której różne wykresy obliczeniowe sieci neuronowej w ramach zadania szkoleniowego są kompilowane w miarę ich napotykania podczas procesu uczenia. W przypadku większych modeli wygodniejsze może być użycie dostarczonego neuron_parallel_compile
narzędzie do wstępnej kompilacji i buforowania różnych wykresów obliczeniowych z wyprzedzeniem, aby uniknąć kompilacji wykresów w czasie szkolenia. Przed uruchomieniem zadania szkoleniowego w klastrze EKS samouczek pokazuje, jak najpierw uruchomić zadanie prekompilacji za pośrednictwem TorchX przy użyciu neuron_parallel_compile
narzędzie. Po zakończeniu zadania prekompilacji kompilator Neuron zidentyfikuje i skompiluje wszystkie grafy obliczeniowe sieci neuronowej i zapisze je w pamięci podręcznej we współdzielonym woluminie do późniejszego wykorzystania podczas rzeczywistego zadania wstępnego szkolenia BERT.
Uruchom rozproszone zadanie szkoleniowe
Po zakończeniu wstępnej kompilacji TorchX jest następnie używany do uruchomienia rozproszonego zadania szkoleniowego dla 64 pracowników w dwóch instancjach trn1.32xlarge, z 32 pracownikami na instancję. Używamy 32 procesów roboczych na instancję, ponieważ każda instancja trn1.32xlarge zawiera 16 akceleratorów Trainium, z których każdy zapewnia 2 rdzenie neuronowe. Dostęp do każdego NeuronCore jest unikalny Urządzenie PyTorch XLA w skrypcie szkolenia. Przykładowe polecenie uruchomienia TorchX z samouczka wygląda jak następujący kod:
Różne argumenty wiersza poleceń w poprzednim poleceniu TorchX są szczegółowo opisane w samouczku. Jednak przy konfigurowaniu zadania szkoleniowego najważniejsze są następujące argumenty:
- -cfg kolejka=test – Określa kolejkę Wulkanu, która ma być używana do zadania szkoleniowego
- -cfg repozytorium_obrazów – Określa repozytorium ECR, które ma być używane dla obrazów kontenerów TorchX
- –argumenty_skryptu – Określa wszelkie argumenty, które powinny zostać przekazane do skryptu szkoleniowego PyTorch
- –nnodes i –nproc_per_node – Liczba instancji i procesów roboczych na instancję do wykorzystania w zadaniu szkoleniowym
- -scenariusz – Nazwa skryptu szkoleniowego PyTorch do uruchomienia w kontenerze szkoleniowym
- -Wizerunek – Ścieżka do obrazu kontenera szkoleniowego w Amazon ECR
- –bf16 – Czy włączyć typ danych BF16
Monitoruj pracę szkoleniową
Po uruchomieniu zadania szkoleniowego istnieją różne sposoby monitorowania zadania. Samouczek pokazuje, jak monitorować podstawowe metryki skryptu szkoleniowego w wierszu polecenia przy użyciu kubectl
, jak wizualnie monitorować postęp skryptu szkoleniowego w TensorBoard (patrz poniższy zrzut ekranu) oraz jak monitorować wykorzystanie akceleratora Trainium za pomocą neuron-top
narzędzie z Neuron SDK.
Oczyść lub ponownie wykorzystaj środowisko
Po zakończeniu zadania szkoleniowego klaster można ponownie wykorzystać lub ponownie skonfigurować na potrzeby dodatkowych zadań szkoleniowych. Na przykład grupę węzłów EKS można szybko skalować w górę przy użyciu eksctl
polecenie w celu obsługi zadań szkoleniowych, które wymagają dodatkowych instancji Trn1. Podobnie, dostarczone polecenia uruchamiania Dockerfile i TorchX można łatwo modyfikować w celu obsługi dodatkowych modeli głębokiego uczenia się i dystrybucji topologii szkoleniowych.
Jeśli klaster nie jest już potrzebny, samouczek zawiera również wszystkie kroki wymagane do usunięcia infrastruktury EKS i powiązanych zasobów.
Wnioski
W tym poście zbadaliśmy, w jaki sposób instancje Trn1 i Amazon EKS zapewniają zarządzaną platformę do wysokowydajnego, opłacalnego i masowo skalowalnego rozproszonego szkolenia modeli głębokiego uczenia się. Udostępniliśmy również kompleksowy samouczek pokazujący, jak uruchomić rzeczywiste rozproszone zadanie szkoleniowe z wieloma instancjami w Amazon EKS przy użyciu instancji Trn1, i podkreśliliśmy kilka kluczowych kroków i komponentów rozwiązania. Ten samouczek można łatwo dostosować do innych modeli i obciążeń, a także zapewnia podstawowe rozwiązanie do rozproszonego szkolenia modeli głębokiego uczenia się w AWS.
Aby dowiedzieć się więcej o tym, jak rozpocząć pracę z instancjami Trn1 opartymi na Trainium, zapoznaj się z sekcją Dokumentacja neuronu.
O autorach
Scotta Perry'ego jest architektem rozwiązań w zespole akceleratora Annapurna ML w AWS. Z siedzibą w Kanadzie pomaga klientom wdrażać i optymalizować obciążenia związane z uczeniem głębokim i wnioskowaniem przy użyciu AWS Inferentia i AWS Trainium. Jego zainteresowania obejmują duże modele językowe, głębokie uczenie wzmacniające, IoT i genomikę.
Loreę Arrizabalagę jest architektem rozwiązań dla brytyjskiego sektora publicznego, gdzie pomaga klientom projektować rozwiązania ML za pomocą Amazon SageMaker. Jest również członkiem Technical Field Community zajmującej się akceleracją sprzętową i pomaga w testowaniu i porównywaniu obciążeń AWS Inferentia i AWS Trainium.
- Dystrybucja treści i PR oparta na SEO. Uzyskaj wzmocnienie już dziś.
- Platoblockchain. Web3 Inteligencja Metaverse. Wzmocniona wiedza. Dostęp tutaj.
- Źródło: https://aws.amazon.com/blogs/machine-learning/scaling-distributed-training-with-aws-trainium-and-amazon-eks/
- 1
- 100
- 11
- 2022
- 2023
- 7
- a
- Zdolny
- O nas
- akcelerator
- akceleratory
- dostęp
- dostęp
- osiągnięty
- w poprzek
- aktywnie
- Dodatkowy
- awansować
- zaawansowany
- Korzyść
- wyrównany
- Wszystkie kategorie
- już
- Chociaż
- Amazonka
- Amazon EC2
- Amazon Sage Maker
- i
- Ogłosić
- ogłosił
- Zapowiedź
- stosowany
- właściwy
- architektura
- argumenty
- aspekty
- powiązany
- dołączać
- atrybuty
- dostępność
- dostępny
- AWS
- Tworzenie chmury AWS
- Inferencja AWS
- przepustowość
- na podstawie
- podstawowy
- bo
- zanim
- Benchmarkingu
- Korzyści
- Miliard
- Kwitnąć
- szeroki
- budować
- Cache
- nazywa
- Kanada
- Frytki
- Dodaj
- wybrany
- Chmura
- Grupa
- kod
- Collective
- przyjście
- Coming Soon
- wspólny
- społeczność
- kompletny
- ukończenia
- składniki
- wszechstronny
- obliczać
- systemu
- połączony
- Składający się
- Pojemnik
- Pojemniki
- zawiera
- zawartość
- kontrola
- Wygodny
- rdzeń
- opłacalne
- Stwórz
- stworzony
- Tworzenie
- tworzenie
- CSI
- Obecnie
- Klientów
- dane
- DDP
- dedykowane
- głęboko
- głęboka nauka
- Domyślnie
- rozwijać
- wdrażane
- opisane
- Wnętrze
- detal
- szczegółowe
- wydarzenia
- urządzenie
- urządzenia
- bezpośrednio
- odkrycie
- dystrybuowane
- szkolenia rozproszone
- rozdzielczy
- pobieranie
- kierowca
- podczas
- każdy
- Wcześniej
- Wcześnie
- łatwość użycia
- z łatwością
- bądź
- umożliwiać
- koniec końców
- Punkt końcowy
- zapewnia
- Enterprise
- Parzyste
- przykład
- podniecony
- z pominięciem
- istnieje
- zbadane
- wyciąg
- tkanina
- Znajomość
- pole
- filet
- i terminów, a
- Elastyczność
- Skupiać
- obserwuj
- następujący
- Framework
- od
- pełny
- Funkcjonalność
- Ogólne
- genomika
- otrzymać
- GitHub
- dany
- wykres
- wykresy
- Zarządzanie
- Przewodniki
- Uchwyty
- sprzęt komputerowy
- Serce
- pomocny
- pomaga
- Wysoki
- wysoka wydajność
- Podświetlony
- wysoko
- gospodarz
- W jaki sposób
- How To
- Jednak
- HTML
- HTTPS
- Setki
- ID
- zidentyfikowane
- obraz
- zdjęcia
- ukryty
- ważny
- in
- zawierać
- włączony
- obejmuje
- Zwiększać
- coraz bardziej
- Infrastruktura
- zainstalować
- zainstalowany
- przykład
- integracja
- zainteresowania
- Internet przedmiotów
- IT
- Praca
- Oferty pracy
- Klawisz
- Uprzejmy
- język
- duży
- na dużą skalę
- większe
- Późno
- uruchomić
- uruchomiona
- wodowanie
- warstwa
- UCZYĆ SIĘ
- nauka
- Doprowadziło
- biblioteki
- Linia
- linux
- załadować
- dłużej
- Popatrz
- WYGLĄD
- maszyna
- uczenie maszynowe
- Główny
- zarządzane
- i konserwacjami
- masywnie
- Pamięć
- Metadane
- Metryka
- ML
- modele
- zmodyfikowano
- Moduł
- monitor
- monitorowane
- monitorowanie
- monitory
- miesięcy
- jeszcze
- większość
- wielokrotność
- Nazwa
- Potrzebować
- sieć
- sieci
- sieci neuronowe
- Następny
- węzeł
- węzły
- numer
- oferowany
- oferuje
- urzędnik
- ONE
- działa
- operacje
- Optymalizacja
- zoptymalizowane
- orkiestracja
- zamówienie
- Inne
- opisane
- wytyczne
- ogólny
- przegląd
- parametry
- część
- minęło
- ścieżka
- par
- jest gwarancją najlepszej jakości, które mogą dostarczyć Ci Twoje monitory,
- faza
- Miejsce
- Platforma
- plato
- Analiza danych Platona
- PlatoDane
- wtyczka
- wtyczki
- zwrotnica
- Post
- powered
- mocny
- warunki wstępne
- wygląda tak
- Postęp
- zapewniać
- pod warunkiem,
- zapewnia
- że
- publiczny
- Wydawniczy
- popychany
- płomień
- szybko
- przypadkowy
- Prawdziwy świat
- referencje
- region
- regiony
- związane z
- usunąć
- składnica
- wymagać
- wymagany
- Wymaga
- Zasoby
- przeglądu
- run
- bieganie
- sagemaker
- taki sam
- Skalowalność
- skalowalny
- waga
- skalowaniem
- Sdk
- sektor
- usługa
- Usługi
- zestaw
- kilka
- shared
- Powłoka
- powinien
- pokazane
- Targi
- znaczący
- Podobnie
- rozmiary
- mniejszy
- So
- Tworzenie
- rozwiązanie
- Rozwiązania
- kilka
- określony
- stos
- standalone
- standard
- rozpoczęty
- startup
- Ewolucja krok po kroku
- Cel
- Nadal
- przechowywanie
- sklep
- taki
- wsparcie
- Utrzymany
- podpory
- synchronizacja
- system
- stół
- biorąc
- zespół
- Techniczny
- szablon
- tymczasowy
- Testowanie
- Połączenia
- UK
- ich
- tysiące
- Przez
- poprzez
- czas
- do
- narzędzie
- narzędzia
- Trening
- prawdziwy
- Tutorial
- Uk
- wyjątkowy
- uniwersalny
- posługiwać się
- Użytkownik
- różnorodny
- wersja
- przez
- Tom
- sposoby
- tygodni
- czy
- który
- Podczas
- będzie
- w ciągu
- pracownik
- pracowników
- by
- jamla
- You
- Twój
- zefirnet
- Strefy