Amazon MLA-C01: Generatywna AI i modele fundamentalne — Przewodnik do nauki
Część AWS Machine Learning Engineer Associate MLA-C01 — Przewodnik do nauki. Ćwicz ze zweryfikowanymi odpowiedziami w centrum egzaminów Amazon, albo rozwiąż testy na czas na ExamRoll.io.
Kluczowa koncepcja
Modele fundamentalne to duże, wstępnie wytrenowane sieci — zazwyczaj oparte na architekturze transformer — które dostarczają ogólnego przeznaczenia reprezentacje językowe, wizualne lub multimodalne. Praktyczne wdrożenie produkcyjne wymaga przekształcenia tych szerokich zdolności w zachowania specyficzne dla aplikacji za pomocą trzech ortogonalnych mechanizmów: inżynierii promptów (prompt engineering) w czasie inferencji, generowania rozszerzonego o wyszukiwanie (RAG) w celu ugruntowania wyników w aktualnej lub specyficznej dla domeny wiedzy, oraz dostosowywania modelu poprzez dostrajanie (fine-tuning) lub techniki wydajne parametrowo. Amazon Bedrock zapewnia zarządzaną ścieżkę do wywoływania modeli fundamentalnych dostarczanych przez firmy trzecie i Amazon za pomocą zunifikowanego API, abstrahując wybór modelu, jednocześnie zachowując kontrolę nad danymi wejściowymi, parametrami modelu (temperature, top_p, max_output_tokens) i obsługą odpowiedzi. SageMaker JumpStart uzupełnia Bedrock, pakując wstępnie wytrenowane artefakty modeli, skrypty treningowe i przepisy na dostrajanie, które działają na kontenerach SageMaker Training lub Hugging Face, umożliwiając powtarzalne przepływy pracy adaptacji i integrację z rejestrem modeli.
Dostrajanie (fine-tuning) występuje w wariantach, które wymieniają zapotrzebowanie na moc obliczeniową i zbiory danych na wierność adaptacji. Pełne dostrajanie (full fine-tuning) aktualizuje wszystkie wagi modelu i często daje najwyższą wydajność dla konkretnego zadania, ale wymaga dużych flot GPU i przestrzeni dyskowej na punkty kontrolne (checkpoints). Techniki dostrajania wydajnego parametrowo (PEFT), takie jak LoRA (low-rank adapters), moduły adapterów lub QLoRA (quantized low-rank adapters), drastycznie redukują zużycie pamięci GPU i czas poprzez wstrzykiwanie i trenowanie niewielkiej liczby dodatkowych parametrów; są one kompatybilne z treningiem w SageMaker przy użyciu Hugging Face i biblioteki bitsandbytes do kwantyzacji 8-bitowej/4-bitowej. Uczenie ze wzmocnieniem z ludzką informacją zwrotną (RLHF) to bardziej złożony potok: zbieranie etykiet preferencji od ludzi w parach, trenowanie modelu nagrody (krok uczenia nadzorowanego z użyciem SageMaker Training i ModelPackage) oraz optymalizacja modelu polityki za pomocą RL on-policy (np. PPO), przechowując jednocześnie przebiegi (rollouts) i punkty kontrolne w S3 oraz monitorując sygnały nagrody za pomocą SageMaker Debugger.
Architektury RAG łączą modele fundamentalne z aktualnymi korpusami danych, aby zredukować halucynacje. Typowy potok RAG osadza tekst zapytania za pomocą modelu embeddingów (API Bedrock Embeddings lub embedder Hugging Face w SageMaker), wykonuje wyszukiwanie wektorowe najbliższego sąsiada w indeksie (Amazon OpenSearch Service z k-NN, Amazon Kendra lub bazy wektorowe firm trzecich), pobiera k najlepszych dokumentów i warunkuje model językowy (LM) pobranym kontekstem za pomocą szablonów promptów i kontrolowanych parametrów dekodowania. Zarządzanie aktualnością i trafnością wymaga okresowego ponownego pozyskiwania i indeksowania źródeł przy użyciu AWS Glue, AWS Lambda dla aktualizacji strumieniowych lub AWS DMS dla źródeł transakcyjnych, oraz przechowywania metadanych pochodzenia (source_id, document_id, ingestion_time) obok wektorów w celu zapewnienia audytowalności.
Kluczowe usługi i konfiguracja
Amazon Bedrock udostępnia API InvokeModel, gdzie żądania zawierają identyfikator modelu i parametry wykonawcze: należy przekazać nagłówki modelId, contentType i accept, treść (body) zawierającą prompty lub inputText oraz parametry modelParameters, takie jak temperature, topP i maxOutputTokens. Używaj ustrukturyzowanych komunikatów systemowych i użytkownika, aby oddzielić instrukcje oparte na rolach i ograniczyć formaty wyjściowe; wymuszaj sekwencje zatrzymania (stop sequences) i max_output_tokens, aby ograniczyć opóźnienia i koszty. Do generowania embeddingów użyj punktu końcowego embeddingów Bedrock lub kontenera inferencyjnego SageMaker Hugging Face i przechowuj wektory w OpenSearch, Kendra lub zewnętrznej bazie danych wektorowych.
SageMaker JumpStart dostarcza gotowe notebooki i potoki do dostrajania, które łączą się z CreateTrainingJob za pomocą konkretnych parametrów API: TrainingJobName, AlgorithmSpecification (TrainingImage, TrainingInputMode), RoleArn, InputDataConfig (S3Uri, DataSource), OutputDataConfig (S3OutputPath), ResourceConfig (InstanceType, InstanceCount, VolumeSizeInGB) oraz StoppingCondition (MaxRuntimeInSeconds). W celu zarządzania modelami (model governance) użyj SageMaker Model Registry oraz CreateModelPackage/CreateModelPackageGroup z ApprovalStatus ustawionym na „PendingManualApproval”; zintegruj promocję modelu z CI/CD, używając atrybutu ApprovalStatus wraz z AWS CodePipeline lub AWS Step Functions i akcją ManualApproval do bramkowania wdrożeń. W celu ciągłego monitorowania i wykrywania stronniczości (bias) wdróż SageMaker Model Monitor za pomocą CreateMonitoringSchedule z MonitoringScheduleConfig i BaselineConfig; użyj SageMaker Clarify poprzez API ProcessingJob (ClarifyProcessor.run_pre_training_bias i run_post_training_bias), aby obliczyć metryki stronniczości zbioru danych i wygenerować linie bazowe przechowywane w S3.
W przypadku wyszukiwania wektorowego i RAG, wybierz technologię indeksowania i wyszukiwania w oparciu o skalę i opóźnienie zapytań. Amazon OpenSearch Service obsługuje wtyczkę k-NN i zapewnia API REST oraz szczegółową kontrolę dostępu; Amazon Kendra oferuje semantyczne wyszukiwanie dla przedsiębiorstw z konektorami do S3, SharePoint i RDS. Użyj crawlerów AWS Glue do zbudowania centralnego Data Catalog, a AWS Lake Formation do wymuszania szczegółowej kontroli dostępu i izolacji danych treningowych w S3, zapewniając zastosowanie IAM, polityk bucketów i szyfrowania (SSE-S3 lub SSE-KMS).
Wzorce projektowe i kompromisy
Podczas dostosowywania modeli fundamentalnych (foundation models) należy wybrać między dostrajaniem (fine‑tuning) w trybie offline a inżynierią promptów (prompt engineering) w czasie rzeczywistym. Pełne dostrajanie maksymalizuje wydajność dla wąsko zdefiniowanych zadań, ale zwiększa złożoność operacyjną: zadania treningowe wymagają dużych flot GPU, rozproszonego treningu na wielu węzłach (użyj SageMaker DistributedDataParallel lub Horovod w trybie Script Mode), checkpointingu do S3 za pomocą UploadDirectory, a później kwantyzacji i konwersji w celu zapewnienia wydajnego wnioskowania. Podejścia PEFT, takie jak LoRA, utrzymują większość wag modelu zamrożonych, co drastycznie skraca czas treningu, umożliwia tańsze przeszukiwanie hiperparametrów (hyperparameter sweeps) i upraszcza wycofywanie zmian (rollback), ponieważ model bazowy pozostaje nienaruszony. Do wnioskowania, zarządzane punkty końcowe (endpoints) Bedrock odciążają operacyjnie przy obsłudze modeli FM firm trzecich, podczas gdy punkty końcowe czasu rzeczywistego SageMaker dają głębszą kontrolę: użyj MultiModelEndpoints do serwowania wielu modeli z jednej instancji, Serverless Inference dla nieprzewidywalnego ruchu lub provisioned endpoints z auto-scalingiem i provisioned concurrency, aby zredukować zimne starty (cold starts).
RAG wprowadza złożoność w utrzymywaniu aktualności indeksu oraz w balansowaniu między wyszukiwaniem informacji (retrieval) a halucynacjami. Prostym wzorcem jest wyszukiwanie hybrydowe (hybrid retrieval): najpierw wykonaj wyszukiwanie wektorowe (semantyczne), a następnie zastosuj filtr słów kluczowych, aby zapewnić precyzję. Przechowuj metadane fragmentów (chunków) dokumentów, aby krok generowania mógł cytować źródła i ułatwić kontrole w Model Monitor pod kątem częstotliwości halucynacji. W przypadku aplikacji wrażliwych na opóźnienia, umieść obliczenia osadzeń (embedding) i indeks w tej samej lokalizacji (wnioskowanie SageMaker + OpenSearch w tym samym VPC) i użyj indeksowania przybliżonego najbliższego sąsiada (ANN), aby uzyskać większą prędkość kosztem kompletności wyników (recall).
RLHF jest procesem o wysokim poziomie trudności (high-friction), ale koniecznym, gdy wymagane jest dostosowanie do ludzkich wartości lub bezpieczeństwa. Potok (pipeline) wymaga narzędzi do adnotacji, powtarzalnego trenowania modelu nagrody (reward training) za pomocą API SageMaker Estimator oraz stabilnych optymalizatorów RL (implementacje PPO z rodzin RLlib lub Stable Baselines). Koszt i niestabilność RLHF muszą być rozważone w kontekście zdolności do korygowania zachowań, których nie można zakodować jako statycznej funkcji straty (static loss).
Częste pułapki i kryteria decyzyjne
Częstym błędem jest poleganie wyłącznie na promptach w celu naprawy systematycznych błędów, które wymagają adaptacji na poziomie modelu; prompty mogą pomóc, ale nie zastąpią fine-tuningu ani RAG w celu ugruntowania w domenie. Inną pułapką jest niedocenianie ładu (governance): wdrożenie systemów generatywnych do produkcji wymaga śledzenia pochodzenia modelu (SageMaker Model Registry), automatycznego wykrywania dryftu (linie bazowe Model Monitor i Clarify) oraz przepływu pracy zatwierdzania (ApprovalStatus + ręczne zatwierdzanie w CodePipeline). W przypadku magazynów embeddingów, wybór indeksu wektorowego bez metadanych lub informacji o pochodzeniu (provenance) sprawia, że późniejsze audyty i analiza błędów stają się kosztowne.
Podejmij decyzję o hostingu modelu, równoważąc kontrolę z kosztami operacyjnymi. Użyj Bedrock, gdy chcesz mieć zarządzany dostęp do różnorodnych, wydajnych modeli fundamentalnych bez zarządzania flotą instancji do inferencji. Użyj punktów końcowych SageMaker, gdy potrzebujesz niestandardowych stosów inferencyjnych, izolacji VPC lub pełnej integracji z Model Registry i Model Monitor. W przypadku metod fine-tuningu, wybierz PEFT, gdy rozmiar zbioru danych jest umiarkowany, a liczy się szybka iteracja; wybierz pełny fine-tuning, gdy domena wymaga głębokiej zmiany reprezentacji, a dysponujesz odpowiednim budżetem na GPU.
Problem praktyczny: Scenariusz użycia
Nazwa firmy: AuroraPayments — wyzwanie: wdrożenie asystenta do wykrywania oszustw o niskim opóźnieniu i podlegającego audytowi, który syntetyzuje kontekst transakcji i dokumenty polityk, aby wyjaśniać podejrzane wyniki i wspiera kontrolowane aktualizacje modelu.
Agregacja i przechowywanie danych: użyj AWS Glue do przeszukiwania (crawl) logów transakcji w S3 i skonfiguruj AWS DMS do replikacji lokalnych (on-prem) tabel MySQL do Amazon RDS lub S3. Zarejestruj wszystkie źródła w AWS Glue Data Catalog i zastosuj polityki Lake Formation. Uzasadnienie: Glue zapewnia bezserwerowy ETL i zunifikowany katalog dla dalszego odczytu, a Lake Formation wymusza izolację dostępu do S3.
Inżynieria cech i wykrywanie anomalii: wprowadzaj cechy do SageMaker Feature Store w celu zapewnienia spójności offline/online. Uruchom zautomatyzowane wykrywanie anomalii za pomocą Amazon Lookout for Metrics na szeregach czasowych transakcji i udostępniaj pulpity nawigacyjne w Amazon QuickSight. Uzasadnienie: Feature Store gwarantuje powtarzalne cechy do trenowania i serwowania; Lookout for Metrics automatyzuje wykrywanie anomalii, a QuickSight zapewnia wizualizację dla analityków biznesowych.
Trenowanie modelu i obsługa niezbalansowania danych: wytrenuj klasyfikator XGBoost za pomocą wbudowanego w SageMaker algorytmu XGBoost z hiperparametrami i ustaw
scale_pos_weightna (num_negative/num_positive), aby skorygować niezbalansowanie klas. Użyj SageMaker Training
undefined
z ResourceConfig dostosowanym do rozmiaru treningu i włącz checkpointing do S3 dla zapewnienia odporności na błędy. Uzasadnienie: XGBoost jest skuteczny w zadaniach wykrywania oszustw na danych tabelarycznych; scale_pos_weight wymaga minimalnego narzutu operacyjnego w porównaniu z syntetycznym oversamplingiem.
- Rejestr modeli, zatwierdzanie i wdrażanie: zarejestruj artefakty modelu w SageMaker Model Registry za pomocą
undefined
/
undefined
i ustaw ApprovalStatus na „PendingManualApproval”. Zaimplementuj potok CodePipeline, który uruchamia akcję zatwierdzania, a następnie wdrażaj zatwierdzone wersje na punktach końcowych czasu rzeczywistego (real-time endpoints) SageMaker z MultiModel endpoints lub Provisioned Instances za Auto Scaling. Uzasadnienie: Model Registry utrzymuje centralne wersjonowanie i ład (Governance); ręczne zatwierdzanie przez CodePipeline wymusza autoryzowane wydania.
Wyjaśnialność i RAG do osadzania w politykach: utwórz embeddingi dokumentów polityk za pomocą Bedrock lub embeddera Hugging Face w SageMaker, zaindeksuj je w Amazon OpenSearch k-NN z metadanymi i zaimplementuj przepływ RAG, w którym prompt dotyczący podejrzanej transakcji zawiera k-najlepszych pobranych fragmentów polityk oraz szablon instruujący model fundamentalny, aby cytował źródła i generował wyjaśnienie czytelne dla człowieka. Uzasadnienie: RAG osadza wyjaśnienia w autorytatywnych dokumentach, a OpenSearch zapewnia skalowalne wyszukiwanie wektorowe w ramach perymetru bezpieczeństwa.
Monitorowanie i ponowne trenowanie: włącz SageMaker Model Monitor z linią bazową (baseline) z początkowej walidacji i zaplanuj uruchamiane na żądanie zadania Clarify ProcessingJobs do przeprowadzania kontroli obciążenia (bias) po wdrożeniu. Jeśli Model Monitor zasygnalizuje dryft (zmianę dystrybucji cech lub etykiet), uruchom potok SageMaker Pipeline, który wykonuje pozyskiwanie danych, ponownie trenuje model z użyciem fine-tuningu LoRA (jeśli do cech tekstowych używany jest enkoder modelu fundamentalnego), ocenia i umieszcza nowy model w rejestrze ze statusem PendingManualApproval. Uzasadnienie: Ciągłe monitorowanie za pomocą zautomatyzowanych potoków utrzymuje wydajność i zgodność modelu pod kontrolą, zachowując jednocześnie ręczną kontrolę nad zmianami w środowisku produkcyjnym.
← Bezpieczeństwo · Wszystkie domeny · Optymalizacja kosztów dla obciążeń ML →
Przećwicz te pytania → · Testy na czas na ExamRoll.io →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Zdaj egzamin →