W miarę jak uczenie maszynowe (ML) staje się głównym nurtem i zyskuje szersze zastosowanie, aplikacje wnioskowania oparte na technologii ML stają się coraz bardziej powszechne w celu rozwiązywania szeregu złożonych problemów biznesowych. Rozwiązanie tych złożonych problemów biznesowych często wymaga użycia wielu modeli i etapów uczenia maszynowego. W tym poście pokazano, jak zbudować i hostować aplikację ML z włączonymi niestandardowymi kontenerami Amazon Sage Maker.
Oferty Amazon SageMaker wbudowane algorytmy i wstępnie zbudowany SageMaker obrazy dokowane do wdrażania modelu. Jeśli jednak nie odpowiadają one Twoim potrzebom, możesz zabrać ze sobą własne kontenery (BYOC) do hostingu w Amazon SageMaker.
Istnieje kilka przypadków użycia, w których użytkownicy mogą potrzebować BYOC do hostingu na Amazon SageMaker.
- Niestandardowe struktury lub biblioteki ML: Jeśli planujesz używać platformy lub bibliotek ML, które nie są obsługiwane przez wbudowane algorytmy lub wstępnie zbudowane kontenery Amazon SageMaker, musisz utworzyć niestandardowy kontener.
- Modele wyspecjalizowane: w przypadku niektórych domen lub branż mogą być wymagane określone architektury modeli lub dostosowane etapy przetwarzania wstępnego, które nie są dostępne we wbudowanych ofertach Amazon SageMaker.
- Zastrzeżone algorytmy: jeśli samodzielnie opracowałeś własne, zastrzeżone algorytmy, będziesz potrzebować niestandardowego kontenera, aby wdrożyć je w Amazon SageMaker.
- Złożone potoki wnioskowania: jeśli przepływ pracy wnioskowania ML obejmuje niestandardową logikę biznesową — serię złożonych kroków, które należy wykonać w określonej kolejności — wówczas BYOC może pomóc w efektywniejszym zarządzaniu tymi krokami i koordynowaniu ich.
Omówienie rozwiązania
W tym rozwiązaniu pokazujemy, jak hostować aplikację wnioskowania szeregowego ML na platformie Amazon SageMaker z punktami końcowymi w czasie rzeczywistym przy użyciu dwóch niestandardowych kontenerów wnioskowania z najnowszymi scikit-learn
i xgboost
pakiety.
Pierwszy kontener wykorzystuje a scikit-learn
model do przekształcania surowych danych w wyróżnione kolumny. To ma zastosowanie Skaler standardowy dla kolumn numerycznych i JedenHotEncoder do kategorycznych.
Drugi kontener obsługuje wstępnie przeszkolony plik XGboost
model (tj. predyktor). Model predykcyjny akceptuje wyróżnione przewidywania danych wejściowych i wyjściowych.
Na koniec wdrażamy cechownik i urządzenie prognozujące w potoku wnioskowania szeregowego do punktu końcowego czasu rzeczywistego Amazon SageMaker.
Oto kilka różnych rozważań na temat tego, dlaczego możesz chcieć mieć oddzielne kontenery w swojej aplikacji wnioskowania.
- Oddzielenie – Różne etapy potoku mają jasno określony cel i muszą być uruchamiane na osobnych kontenerach ze względu na powiązane zależności. Pomaga to również utrzymać dobrą strukturę rurociągu.
- Konstrukcje – Różne etapy potoku wykorzystują określone struktury dopasowane do celu (takie jak scikit lub Spark ML) i dlatego muszą być uruchamiane w osobnych kontenerach.
- Izolacja zasobów – Różne etapy rurociągu mają różne wymagania dotyczące zużycia zasobów i dlatego muszą być uruchamiane w osobnych kontenerach, aby uzyskać większą elastyczność i kontrolę.
- Konserwacja i aktualizacje – Z operacyjnego punktu widzenia sprzyja to izolacji funkcjonalnej i można znacznie łatwiej aktualizować lub modyfikować poszczególne kroki, bez wpływu na inne modele.
Ponadto lokalna kompilacja poszczególnych kontenerów pomaga w iteracyjnym procesie programowania i testowania przy użyciu ulubionych narzędzi i zintegrowanych środowisk programistycznych (IDE). Gdy kontenery będą gotowe, możesz wdrożyć je w chmurze AWS w celu wnioskowania przy użyciu punktów końcowych Amazon SageMaker.
Pełna implementacja, łącznie z fragmentami kodu, jest dostępna w tym repozytorium Github tutaj.
Wymagania wstępne
Ponieważ najpierw będziemy testować te niestandardowe kontenery lokalnie, będziemy potrzebować zainstalowanego pulpitu dokowanego na Twoim komputerze lokalnym. Powinieneś być zaznajomiony z budowaniem kontenerów dokowanych.
Będziesz także potrzebować konta AWS z dostępem do Amazon SageMaker, Amazon ECR i Amazon S3, aby kompleksowo przetestować tę aplikację.
Upewnij się, że masz najnowszą wersję Boto3
i zainstalowane pakiety Amazon SageMaker Python:
Przewodnik po rozwiązaniu
Zbuduj niestandardowy kontener funkcji
Aby zbudować pierwszy kontener, kontener funkcji, szkolimy a scikit-learn
model do przetwarzania surowych funkcji w pliku uchowiec zbiór danych. Używany jest skrypt przetwarzania wstępnego ProstyImputer do obsługi brakujących wartości, Skaler standardowy do normalizacji kolumn numerycznych i JedenHotEncoder do przekształcania kolumn kategorycznych. Po zamontowaniu transformatora zapisujemy model w Joblib job format. Następnie kompresujemy i przesyłamy ten zapisany artefakt modelu do usługi Amazon Simple Storage Service (Amazon S3) wiaderko.
Oto przykładowy fragment kodu, który to demonstruje. Odnosić się do cecha.ipynb do pełnej realizacji:
Następnie, aby utworzyć niestandardowy kontener wnioskowania dla modelu funkcji, budujemy obraz Dockera z pakietami nginx, gunicorn i flask wraz z innymi wymaganymi zależnościami dla modelu funkcji.
Nginx, gunicorn i aplikacja Flask będą służyć jako modelowy stos obsługujący na punktach końcowych czasu rzeczywistego Amazon SageMaker.
Wprowadzając niestandardowe kontenery do hostingu w Amazon SageMaker, musimy upewnić się, że skrypt wnioskowania po uruchomieniu w kontenerze wykonuje następujące zadania:
- Ładowanie modelu: Skrypt wnioskowania (
preprocessing.py
) powinien się odnosić/opt/ml/model
katalog, aby załadować model do kontenera. Artefakty modelu w Amazon S3 zostaną pobrane i zamontowane w kontenerze na ścieżce/opt/ml/model
. - Zmienne środowiska: Aby przekazać niestandardowe zmienne środowiskowe do kontenera, należy je określić podczas Model etapie tworzenia lub w trakcie Punkt końcowy tworzenie z pracy szkoleniowej.
- Wymagania API: Skrypt wnioskowania musi implementować oba
/ping
i/invocations
tras jako aplikacja Flask. The/ping
Interfejs API służy do kontroli stanu, podczas gdy plik/invocations
API obsługuje żądania wnioskowania. - Logowanie: Dzienniki wyjściowe w skrypcie wnioskowania muszą być zapisywane na standardowym wyjściu (stdout) i błąd standardowy (stderr) strumienie. Dzienniki te są następnie przesyłane strumieniowo do Amazon Cloud Watch przez Amazon SageMaker.
Oto fragment z preprocessing.py
które pokazują realizację /ping
i /invocations
.
Odnosić się do wstępne przetwarzanie.py w folderze funkcji w celu pełnej implementacji.
Zbuduj obraz platformy Docker za pomocą stosu funkcji i udostępniania modeli
Utwórzmy teraz plik Dockerfile przy użyciu niestandardowego obrazu podstawowego i zainstalujmy wymagane zależności.
W tym celu używamy python:3.9-slim-buster
jako obraz bazowy. Możesz zmienić ten dowolny inny obraz podstawowy odpowiedni dla Twojego przypadku użycia.
Następnie kopiujemy konfigurację Nginx, plik bramy serwera WWW Gunicorn i skrypt wnioskowania do kontenera. Tworzymy także skrypt Pythona o nazwieserver, który uruchamia procesy nginx i gunicorn w tle i ustawia skrypt wnioskowania (tj. aplikację preprocessing.py Flask) jako punkt wejścia dla kontenera.
Oto fragment pliku Dockerfile do hostowania modelu funkcji. Aby zapoznać się z pełną implementacją, zobacz Dockerfile dla cechownik teczka.
Przetestuj niestandardowy obraz wnioskowania za pomocą funkcji cechującej lokalnie
Teraz zbuduj i przetestuj niestandardowy kontener wnioskowania za pomocą lokalnego modułu funkcji, korzystając z usługi Amazon Tryb lokalny SageMakera. Tryb lokalny jest idealny do testowania skryptów przetwarzania, uczenia i wnioskowania bez uruchamiania jakichkolwiek zadań w Amazon SageMaker. Po potwierdzeniu wyników lokalnych testów możesz łatwo dostosować skrypty szkoleniowe i wnioskowania do wdrożenia w Amazon SageMaker przy minimalnych zmianach.
Aby lokalnie przetestować niestandardowy obraz funkcji, najpierw zbuduj obraz, korzystając z wcześniej zdefiniowanego obrazu Dockerfile. Następnie uruchom kontener, montując katalog zawierający model funkcji (preprocess.joblib
) do /opt/ml/model
katalog wewnątrz kontenera. Dodatkowo zamapuj port 8080 z kontenera na hosta.
Po uruchomieniu możesz wysyłać żądania wnioskowania do http://localhost:8080/invocations.
Aby zbudować i uruchomić kontener, otwórz terminal i uruchom następujące polecenia.
Pamiętaj, że powinieneś wymienić <IMAGE_NAME>
, jak pokazano w poniższym kodzie, z nazwą obrazu kontenera.
Poniższe polecenie zakłada również, że przeszkolony scikit-learn
Model (preprocess.joblib
) znajduje się w katalogu o nazwie models
.
Po uruchomieniu kontenera możemy przetestować oba /świst i /modły trasy za pomocą poleceń curl.
Uruchom poniższe polecenia z terminala
Kiedy wysyłane są surowe (nieprzekształcone) dane http://localhost:8080/invocations, punkt końcowy odpowiada przekształconymi danymi.
Powinieneś zobaczyć odpowiedź podobną do następującej:
Teraz kończymy działający kontener, a następnie tagujemy i wypychamy lokalny, niestandardowy obraz do prywatnego rejestru Amazon Elastic Container Registry (Amazon ECR) repozytorium.
Zobacz następujące polecenia, aby zalogować się do Amazon ECR, które oznaczają lokalny obraz pełną ścieżką obrazu Amazon ECR, a następnie przesyłają obraz do Amazon ECR. Upewnij się, że wymieniłeś region
i account
zmienne pasujące do Twojego środowiska.
Odnosić się do utwórz repozytorium i wypchnij obraz do Amazon ECR Interfejs wiersza poleceń AWS (AWS CLI .) polecenia, aby uzyskać więcej informacji.
Opcjonalny krok
Opcjonalnie możesz przeprowadzić test na żywo, wdrażając model funkcji w punkcie końcowym czasu rzeczywistego z niestandardowym obrazem okna dokowanego w Amazon ECR. Odnosić się do cecha.ipynb notebook do pełnej implementacji budowania, testowania i przesyłania niestandardowego obrazu do Amazon ECR.
Amazon SageMaker inicjuje punkt końcowy wnioskowania i kopiuje artefakty modelu do pliku /opt/ml/model
katalog wewnątrz kontenera. Widzieć Jak SageMaker ładuje artefakty modelu.
Zbuduj niestandardowy kontener predykcyjny XGBoost
Aby zbudować kontener wnioskowania XGBoost, wykonujemy podobne kroki, jak podczas budowania obrazu kontenera funkcji:
- Pobierz wstępnie przeszkolony
XGBoost
model z Amazona S3. - utworzyć
inference.py
skrypt, który ładuje wstępnie przeszkolonyXGBoost
model, konwertuje przekształcone dane wejściowe otrzymane od funkcji cechującej i konwertuje doXGBoost.DMatrix
format, działapredict
na wzmacniaczu i zwraca prognozy w formacie json. - Skrypty i pliki konfiguracyjne tworzące stos obsługujący model (tj.
nginx.conf
,wsgi.py
,serve
pozostają takie same i nie wymagają modyfikacji. - Używamy pliki
Ubuntu:18.04
jako obraz podstawowy pliku Dockerfile. To nie jest warunek wstępny. Używamy obrazu podstawowego Ubuntu, aby zademonstrować, że kontenery można budować z dowolnego obrazu podstawowego. - Kroki tworzenia obrazu dokowanego klienta, testowania obrazu lokalnie i przesyłania testowanego obrazu do Amazon ECR pozostają takie same jak poprzednio.
Dla zwięzłości, ponieważ kroki są podobne, jak pokazano wcześniej; jednakże poniżej pokazujemy tylko zmienione kodowanie.
Po pierwsze, inference.py
scenariusz. Oto fragment pokazujący implementację /ping
i /invocations
. Odnosić się do inference.py pod urządzenie prognozujące folder w celu pełnej implementacji tego pliku.
Oto fragment pliku Dockerfile do hostowania modelu predykcyjnego. Aby zapoznać się z pełną implementacją, zobacz Dockerfile w folderze predyktorów.
Następnie kontynuujemy budowanie, testowanie i wypychanie tego niestandardowego obrazu predykcyjnego do prywatnego repozytorium w Amazon ECR. Odnosić się do predyktor.ipynb notebook do pełnej implementacji budowania, testowania i przesyłania niestandardowego obrazu do Amazon ECR.
Wdróż potok wnioskowania szeregowego
Po przetestowaniu zarówno obrazów cechujących, jak i predykcyjnych i przesłaniu ich do Amazon ECR, przesyłamy teraz artefakty naszego modelu do segmentu Amazon S3.
Następnie tworzymy dwa obiekty modelu: jeden dla featurizer
(IE preprocess.joblib
) i inne dla predictor
(IE xgboost-model
), określając niestandardowy identyfikator uri obrazu, który zbudowaliśmy wcześniej.
Oto fragment, który to pokazuje. Odnosić się do potok-wnioskowania szeregowego.ipynb do pełnej realizacji.
Teraz, aby wdrożyć te kontenery w sposób szeregowy, najpierw tworzymy plik Model rurociągu obiekt i przekazać featurizer
model i predictor
model do obiektu listy Pythona w tej samej kolejności.
Następnie dzwonimy do .deploy()
metoda na Model rurociągu określenie typu instancji i liczby instancji.
Na tym etapie Amazon SageMaker wdraża potok wnioskowania szeregowego w punkcie końcowym czasu rzeczywistego. Czekamy, aż będzie punkt końcowy InService
.
Możemy teraz przetestować punkt końcowy, wysyłając kilka żądań wnioskowania do tego aktywnego punktu końcowego.
Odnosić się do potok-wnioskowania szeregowego.ipynb do pełnej realizacji.
Sprzątać
Po zakończeniu testowania postępuj zgodnie z instrukcjami w sekcji czyszczenia notatnika, aby usunąć zasoby udostępnione w tym poście i uniknąć niepotrzebnych opłat. Odnosić się do Cennik Amazon SageMaker aby uzyskać szczegółowe informacje na temat kosztów instancji wnioskowania.
Wnioski
W tym poście pokazałem, jak możemy zbudować i wdrożyć aplikację wnioskowania szeregowego ML przy użyciu niestandardowych kontenerów wnioskowania w punktach końcowych czasu rzeczywistego w Amazon SageMaker.
To rozwiązanie pokazuje, jak klienci mogą w ekonomiczny sposób przynosić własne, niestandardowe kontenery do hostingu w Amazon SageMaker. Dzięki opcji BYOC klienci mogą szybko tworzyć i dostosowywać swoje aplikacje ML do wdrożenia w Amazon SageMaker.
Zachęcamy do wypróbowania tego rozwiązania ze zbiorem danych odpowiednim dla kluczowych wskaźników wydajności Twojej firmy (KPI). W tym miejscu możesz zapoznać się z całym rozwiązaniem Repozytorium GitHub.
Referencje
O autorze
Praveen Chamarthi jest starszym specjalistą AI/ML w Amazon Web Services. Jest pasjonatem AI/ML i wszystkich rzeczy związanych z AWS. Pomaga klientom w obu Amerykach skalować, wprowadzać innowacje i wydajnie obsługiwać obciążenia ML w AWS. W wolnym czasie Praveen uwielbia czytać i oglądać filmy science-fiction.
- 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/build-and-deploy-ml-inference-applications-from-scratch-using-amazon-sagemaker/
- :ma
- :Jest
- :nie
- :Gdzie
- $W GÓRĘ
- 08
- 09
- 1
- 10
- 100
- 11
- 13
- 14
- 150
- 16
- 17
- 20
- 200
- 2023
- 25
- 28
- 30
- 500
- 7
- 8
- 87
- 9
- a
- O nas
- Akceptuj
- Akceptuje
- dostęp
- odpowiednio
- Konto
- w poprzek
- przystosować
- do tego
- Przyjęcie
- wpływający
- Po
- AI / ML
- Algorytmy
- Wszystkie kategorie
- wzdłuż
- również
- Amazonka
- Amazon Sage Maker
- Amazon Web Services
- Americas
- an
- i
- każdy
- api
- Aplikacja
- Zastosowanie
- aplikacje
- dotyczy
- kwiecień
- SĄ
- Szyk
- AS
- zakłada
- At
- dostępny
- uniknąć
- AWS
- tło
- baza
- na podstawie
- BE
- staje
- zanim
- jest
- poniżej
- ciało
- booster
- obie
- przynieść
- Bringing
- budować
- Budowanie
- wybudowany
- wbudowany
- Zapakować
- biznes
- ale
- by
- wezwanie
- nazywa
- CAN
- walizka
- Etui
- CAT
- pewien
- zmiana
- zmieniony
- Zmiany
- Opłaty
- ZOBACZ
- Wykrywanie urządzeń szpiegujących
- wyraźnie
- Chmura
- kod
- Kodowanie
- Kolumna
- kolumny
- COM
- wspólny
- kompleks
- komputer
- systemu
- połączony
- połączenie
- Rozważania
- stały
- skonstruować
- konsumpcja
- Pojemnik
- Pojemniki
- zawartość
- treść
- kontynuować
- kontrola
- konwertować
- Koszty:
- mógłby
- Stwórz
- Tworzenie
- tworzenie
- Listy uwierzytelniające
- zwyczaj
- klient
- Klientów
- dane
- Data
- określić
- zdefiniowane
- wykazać
- demonstruje
- Zależności
- rozwijać
- wdrażane
- wdrażanie
- Wdrożenie
- wdraża się
- stacjonarny
- detale
- ustalona
- rozwinięty
- oprogramowania
- DICT
- ZROBIŁ
- różne
- Doker
- domeny
- zrobić
- nie
- z powodu
- podczas
- e
- Wcześniej
- z łatwością
- skutecznie
- więcej
- zachęcać
- koniec końców
- Punkt końcowy
- zapewnić
- Cały
- wejście
- Środowisko
- środowiska
- błąd
- itp
- przykład
- Z wyjątkiem
- wyjątek
- wykonany
- znajomy
- Moda
- Moja lista
- Korzyści
- kilka
- filet
- Akta
- i terminów, a
- dopasować
- dopasowywanie
- Elastyczność
- obserwuj
- następujący
- W razie zamówieenia projektu
- Nasz formularz
- format
- znaleziono
- Framework
- Ramy
- od
- pełny
- funkcjonować
- funkcjonalny
- Zyski
- Bramka
- otrzymać
- GitHub
- GMT
- Goes
- uchwyt
- Uchwyty
- Prowadzenie
- Have
- he
- Zdrowie
- wysokość
- pomoc
- pomaga
- jego
- gospodarz
- Hosting
- gospodarze
- W jaki sposób
- How To
- Jednak
- HTML
- http
- HTTPS
- i
- if
- obraz
- zdjęcia
- wdrożenia
- realizacja
- importować
- in
- obejmuje
- Włącznie z
- coraz bardziej
- wskaźniki
- indywidualny
- przemysłowa
- Informacja
- inhouse
- wprowadzać innowacje
- wkład
- wewnątrz
- zainstalować
- zainstalowany
- przykład
- instrukcje
- zintegrowany
- Interfejs
- najnowszych
- zaangażowany
- izolacja
- IT
- Praca
- Oferty pracy
- jpg
- json
- Trzymać
- Klawisz
- Etykieta
- firmy
- uruchomić
- uruchomiona
- uruchamia
- wodowanie
- nauka
- lewo
- Długość
- biblioteki
- Linia
- Lista
- Katalogowany
- relacja na żywo
- załadować
- załadunek
- masa
- miejscowy
- lokalnie
- logika
- Zaloguj Się
- kocha
- maszyna
- uczenie maszynowe
- Mainstream
- WYKONUJE
- Dokonywanie
- zarządzanie
- sposób
- mapa
- znak
- Mecz
- Może..
- metoda
- może
- minimalny
- brakujący
- ML
- Moda
- model
- modele
- modyfikować
- jeszcze
- Kino
- dużo
- wielokrotność
- musi
- Nazwa
- Nazwy
- Potrzebować
- wymagania
- Nie
- żaden
- notatnik
- już dziś
- numer
- tępy
- przedmiot
- obiekty
- of
- Oferty
- Oferty
- często
- on
- pewnego razu
- ONE
- te
- tylko
- na
- koncepcja
- działać
- operacyjny
- Option
- or
- zamówienie
- OS
- Inne
- ludzkiej,
- wydajność
- własny
- Pakiety
- pandy
- parametry
- szczególny
- przechodzić
- namiętny
- ścieżka
- doskonały
- wykonać
- jest gwarancją najlepszej jakości, które mogą dostarczyć Ci Twoje monitory,
- wykonuje
- rurociąg
- krok po kroku
- plato
- Analiza danych Platona
- PlatoDane
- Proszę
- punkt
- Post
- przepowiednia
- Przewidywania
- Urządzenie prognozujące
- teraźniejszość
- poprzednio
- prywatny
- problemy
- wygląda tak
- procesów
- przetwarzanie
- Procesor
- promuje
- własność
- cel
- Naciskać
- popychany
- Popychanie
- Python
- szybko
- podnieść
- zasięg
- Surowy
- Czytaj
- gotowy
- w czasie rzeczywistym
- Odebrane
- odnosić się
- rejestr
- pozostawać
- obsługi produkcji rolnej, która zastąpiła
- składnica
- zażądać
- wywołań
- wymagać
- wymagany
- wymagania
- Wymaga
- Zasób
- Zasoby
- odpowiedź
- dalsze
- Efekt
- powrót
- powrót
- powraca
- Pierścień
- Trasa
- trasy
- RZĄD
- run
- bieganie
- działa
- sagemaker
- taki sam
- Zapisz
- zapisywane
- Skala
- sci-fi
- zadraśnięcie
- scenariusz
- skrypty
- druga
- Sekcja
- widzieć
- wysłać
- wysyłanie
- senior
- wysłany
- oddzielny
- seryjny
- Serie
- służyć
- serwer
- usługa
- Usługi
- służąc
- Sesja
- zestaw
- Zestawy
- kilka
- Seks
- powinien
- pokazać
- pokazał
- pokazane
- Targi
- podobny
- Prosty
- skrawek
- So
- rozwiązanie
- ROZWIĄZANIA
- kilka
- coś
- Iskra
- specjalista
- specyficzny
- stos
- STAGE
- standard
- punkt widzenia
- Rynek
- Ewolucja krok po kroku
- Cel
- przechowywanie
- strumieniowo
- Strumienie
- sznur
- zbudowany
- Z powodzeniem
- taki
- Niedz
- Utrzymany
- Wspierający
- podpory
- TAG
- dostosowane
- trwa
- zadania
- terminal
- test
- przetestowany
- Testowanie
- Testy
- że
- Połączenia
- ich
- Im
- następnie
- Tam.
- w związku z tym
- Te
- rzeczy
- to
- czas
- do
- narzędzia
- Pociąg
- przeszkolony
- Trening
- Przekształcać
- przekształcony
- transformator
- Transformatory
- transformatorowy
- próbować
- stara
- drugiej
- rodzaj
- Ubuntu
- dla
- zasadniczy
- niepotrzebny
- uaktualnienie
- nadający się do użytku
- posługiwać się
- przypadek użycia
- używany
- Użytkownicy
- zastosowania
- za pomocą
- Wartości
- różnorodny
- zmienne
- weryfikacja
- wersja
- czekać
- chcieć
- była
- we
- sieć
- serwer wWW
- usługi internetowe
- DOBRZE
- który
- Podczas
- dlaczego
- szerszy
- będzie
- w
- w ciągu
- bez
- workflow
- pracujący
- napisany
- X
- XGBoost
- You
- Twój
- zefirnet