Punkty kontrolne
Run the cells in the housing_question_answering.ipynb file.
/ 40
Change the parameters and save your response
/ 20
Run the cells in the housing_text_summarization.ipynb file.
/ 40
Projektowanie promptów przy użyciu modelu PaLM
- GSP1165
- Opis
- Przypadek użycia
- Funkcje Vertex AI używane w tym module
- Konfiguracja i wymagania
- Zadanie 1. Odpowiadanie na pytania przy pomocy modeli generatywnych w Vertex AI
- Wartości parametrów
- Zadanie 2. Różne wartości parametrów
- Zadanie 3. Streszczanie tekstu przy użyciu modeli generatywnych w Vertex AI
- Gratulacje!
GSP1165
Opis
Projektowanie to proces tworzenia promptów, które pozwalają uzyskać oczekiwaną odpowiedź od dużego modelu językowego (LLM) takiego jak PaLM. Promptów można używać do generowania tekstu, tłumaczenia, pisania różnego rodzaju treści kreatywnych i uzyskiwania merytorycznych odpowiedzi na pytania.
Aby użycie prompta przyniosło oczekiwane rezultaty, musi on być konkretny, zawierać słowa kluczowe związane z odpowiedzią, którą chcesz uzyskać, oraz jej przykłady. Te informacje pomogą modelowi PaLM ustalić, czego potrzebujesz.
W tym module wcielisz się w rolę analityka marketingowego w firmie z branży nieruchomości. Musisz utworzyć prompty, które mogą streścić bardzo długie opisy domów z witryny Twojej firmy, tak aby klienci mogli znaleźć nieruchomości, które spełniają ich wymagania.
Czego się nauczysz
W tym module zapoznasz się z Vertex AI jako platformą AI/ML i dowiesz się, jak:
- projektować dobrej jakości prompty,
- uzyskiwać potrzebne Ci odpowiedzi z modelu PaLM,
- wykrywać halucynacje w odpowiedziach.
Przypadek użycia
Twoja firma jest zainteresowana zastosowaniem dużych modeli językowych (LLM) do tworzenia krótkich opisów tekstowych domów na podstawie poszukiwanych cech podanych przez potencjalnych nabywców.
Poproszono Cię o utworzenie promptów, które mogą streścić bardzo długie opisy domów w witrynie z ofertami nieruchomości. Opisy są zapisane w pliku w zasobniku Google Cloud Storage.
Aby zaoszczędzić czas i jak najszybciej wdrożyć rozwiązanie, zaczniesz od wyszukania dostępnych gotowych modeli w bazie modeli.
Funkcje Vertex AI używane w tym module
Modele generatywnej AI
Modele generatywnej AI dostępne w Vertex AI, zwane również modelami podstawowymi, są podzielone na kategorie według rodzaju treści, którą mają generować. Rodzaje treści obejmują tekst, wiadomości na czacie, obrazy, kod oraz wektory dystrybucyjne reprezentujące tekst. Każdy model jest udostępniany przez punkt końcowy aplikacji publikującej, który jest powiązany z Twoim projektem Google Cloud. Nie ma więc potrzeby wdrażania modelu podstawowego, chyba że musisz dostroić go do danego przypadku użycia.
Pathways i model językowy PaLM
Pathways to bardzo wydajny pojedynczy model z możliwością uogólniania w różnych domenach i działaniach. PaLM to gęsty model transformera z samym dekoderem wytrenowany przy użyciu systemu Pathways. Zastosowanie tego systemu pozwoliło Google sprawnie wytrenować ten pojedynczy model na wielu podach TPU v4. Ocena działania modelu PaLM została przeprowadzona na podstawie setek zadań polegających na interpretowaniu i generowaniu treści. Ten model bardzo dobrze sobie radzi z treściami w różnych językach oraz z generowaniem kodu źródłowego.
Podstawą interfejsu PaLM API jest PaLM 2. Jest to nowoczesny model językowy z udoskonalonymi możliwościami rozumowania i kodowania oraz lepszą obsługą różnych języków. Aby dowiedzieć się więcej, przeczytaj artykuł przedstawiający PaLM 2. W tym notatniku zobaczysz, jak projektować prompty do streszczania różnego rodzaju informacji.
Vertex AI Studio
Vertex AI Studio to narzędzie w konsoli Google Cloud do szybkiego prototypowania i testowania modeli generatywnej AI. Możesz testować przykładowe prompty oraz projektować swoje własne, a także dostosowywać modele podstawowe pod kątem wykonywania zadań spełniających potrzeby Twojej aplikacji. Możesz:
- testować modele za pomocą przykładowych promptów,
- projektować i zapisywać własne prompty,
- dostrajać model podstawowy,
- zamieniać mowę na tekst lub odwrotnie.
Więcej informacji o AI Studio znajdziesz w oficjalnej dokumentacji.
Vertex AI Workbench
Vertex AI Workbench to w pełni zarządzana skalowalna infrastruktura obliczeniowa dla firm zapewniająca 1 środowisko, w którym badacze danych mogą wykonywać wszystkie zadania związane z uczeniem maszynowym – od wdrażania modeli po zarządzanie nimi i ich monitorowanie. Opiera się na platformie Jupyter i obejmuje szeroką gamę narzędzi oraz usług, takich jaki notatniki Jupyter i zarządzane zasoby obliczeniowe.
Konfiguracja i wymagania
Zanim klikniesz przycisk Rozpocznij moduł
Zapoznaj się z tymi instrukcjami. Moduły mają limit czasowy i nie można ich zatrzymać. Gdy klikniesz Rozpocznij moduł, na liczniku wyświetli się informacja o tym, na jak długo udostępniamy Ci zasoby Google Cloud.
W tym praktycznym module możesz spróbować swoich sił w wykonywaniu opisywanych działań w prawdziwym środowisku chmury, a nie w jego symulacji lub wersji demonstracyjnej. Otrzymasz nowe, tymczasowe dane logowania, dzięki którym zalogujesz się i uzyskasz dostęp do Google Cloud na czas trwania modułu.
Do ukończenia modułu potrzebne będą:
- dostęp do standardowej przeglądarki internetowej (zalecamy korzystanie z przeglądarki Chrome).
- Odpowiednia ilość czasu na ukończenie modułu – pamiętaj, że gdy rozpoczniesz, nie możesz go wstrzymać.
Rozpoczynanie modułu i logowanie się w konsoli Google Cloud
-
Kliknij przycisk Rozpocznij moduł. Jeśli moduł jest odpłatny, otworzy się wyskakujące okienko, w którym możesz wybrać formę płatności. Po lewej stronie znajduje się panel Szczegóły modułu z następującymi elementami:
- przyciskiem Otwórz konsolę Google Cloud;
- czasem, który Ci pozostał;
- tymczasowymi danymi logowania, których musisz użyć w tym module;
- innymi informacjami potrzebnymi do ukończenia modułu.
-
Kliknij Otwórz konsolę Google Cloud (lub kliknij prawym przyciskiem myszy i wybierz Otwórz link w oknie incognito, jeśli korzystasz z przeglądarki Chrome).
Moduł uruchomi zasoby, po czym otworzy nową kartę ze stroną logowania.
Wskazówka: otwórz karty obok siebie w osobnych oknach.
Uwaga: jeśli pojawi się okno Wybierz konto, kliknij Użyj innego konta. -
W razie potrzeby skopiuj nazwę użytkownika znajdującą się poniżej i wklej ją w oknie logowania.
{{{user_0.username | "Username"}}} Nazwę użytkownika znajdziesz też w panelu Szczegóły modułu.
-
Kliknij Dalej.
-
Skopiuj podane niżej hasło i wklej je w oknie powitania.
{{{user_0.password | "Password"}}} Hasło znajdziesz też w panelu Szczegóły modułu.
-
Kliknij Dalej.
Ważne: musisz użyć danych logowania podanych w module. Nie używaj danych logowania na swoje konto Google Cloud. Uwaga: korzystanie z własnego konta Google Cloud w tym module może wiązać się z dodatkowymi opłatami. -
Na kolejnych stronach wykonaj następujące czynności:
- Zaakceptuj Warunki korzystania z usługi.
- Nie dodawaj opcji odzyskiwania ani uwierzytelniania dwuskładnikowego (ponieważ konto ma charakter tymczasowy).
- Nie rejestruj się w bezpłatnych wersjach próbnych.
Poczekaj, aż na karcie otworzy się konsola Google Cloud.
Włączanie interfejsów API
- W Menu nawigacyjnym () konsoli Google Cloud kliknij Więcej produktów, a następnie w sekcji Sztuczna inteligencja wybierz Vertex AI.
- W panelu Vertex AI kliknij Włącz wszystkie zalecane interfejsy API.
Otwieranie Vertex AI Workbench
-
Nie wychodząc z panelu Vertex AI, kliknij Workbench po lewej stronie.
Uwaga: aby wyświetliła się lewa część panelu, konieczne może być poszerzenie okna przeglądarki. -
Kliknij kartę Notatniki zarządzane przez użytkownika.
Zadanie 1. Odpowiadanie na pytania przy pomocy modeli generatywnych w Vertex AI
Poproszono Cię o utworzenie interfejsu, który pozwoli potencjalnym klientom filtrować oferty nieruchomości zgodnie z udzielonymi przez nich odpowiedziami.
- Na karcie Notatniki zarządzane przez użytkownika kliknij Otwórz JupyterLab obok nazwy notatnika.
Otworzy się Vertex AI Workbench. Zwróć uwagę na pliki w panelu po lewej stronie.
- Przejdź do pliku
training-data-analyst/self-paced-labs/genai/housing_question_answering.ipynb
i kliknij dwukrotnie, aby go otworzyć.
Plik housing_question_answering.ipynb
jest otwarty i widoczny w panelu po prawej stronie.
-
Kliknij Edytuj > Wyczyść wszystkie dane wyjściowe.
-
Uważnie przeczytaj instrukcje notatnika i uruchom kod w każdej komórce.
Aby uruchomić bieżącą komórkę, kliknij ją i naciśnij SHIFT + ENTER. Lista pozostałych poleceń dotyczących komórek znajduje się w interfejsie notatnika w sekcji Uruchom.
Nie zamykaj środowiska notatnika Jupyter podczas czytania pozostałej części tego zadania. Wrócisz do niego w zadaniu 3.
Kliknij Sprawdź postępy, aby zobaczyć, jak Ci poszło.
Wartości parametrów
Każde wywołanie wysłane do modelu zawiera wartości parametrów, które określają, jak model wygeneruje odpowiedź. Model będzie generować różne wyniki zależnie od tych wartości. Aby uzyskać najlepsze rezultaty w tym zadaniu, wypróbujesz różne wartości parametrów.
W różnych modelach dostępne są różne parametry, ale najczęściej występują te:
- Temperatura
- Limit tokenów
- Top-K
- Top-P
Temperatura
Temperatura decyduje o stopniu losowości wyboru tokenów, jeśli zastosowane zostały parametry Top-K oraz Top-P. Niższe temperatury są przydatne w przypadku promptów, na które oczekuje się bardziej deterministycznej i mniej otwartej lub kreatywnej odpowiedzi, a wyższe mogą prowadzić do bardziej różnorodnych lub kreatywnych wyników. Temperatura o wartości 0 jest deterministyczna, co oznacza, że zawsze jest wybierana najbardziej prawdopodobna odpowiedź.
W większości przypadków dobrze jest zacząć od temperatury 0,2. Jeśli model zwróci zbyt ogólną lub krótką odpowiedź, albo odpowiedź zastępczą, spróbuj zwiększyć temperaturę.
Limit tokenów
Limit tokenów określa maksymalną ilość tekstu generowanego w odpowiedzi na 1 prompt. Token ma około 4 znaków. Wartością domyślną jest 256.
Jeśli chcesz uzyskiwać krótsze odpowiedzi, podaj niższą wartość, a jeśli dłuższe – wyższą.
Top-K
Parametr Top-K zmienia sposób, w jaki model wybiera tokeny w celu wygenerowania odpowiedzi. Top-K o wartości 1 oznacza, że wybierany jest najbardziej prawdopodobny token spośród wszystkich tokenów w słowniku modelu (jest to też nazywane dekodowaniem zachłannym), natomiast Top-K o wartości 3 oznacza, że następny token jest wybierany z użyciem temperatury spośród 3 najbardziej prawdopodobnych.
Na każdym etapie wyboru tokena próbkowane są tokeny Top-K o najwyższym prawdopodobieństwie. Tokeny są następnie filtrowane na podstawie parametru Top-P, a ostateczny wybór tokena dokonywany jest przy pomocy próbkowania z użyciem temperatury.
Jeśli chcesz uzyskiwać mniej losowe odpowiedzi, podaj niższą wartość, a jeśli bardziej – wyższą. Wartość domyślna parametru Top-K to 40.
Top-P
Parametr Top-P również zmienia sposób, w jaki model wybiera tokeny w celu wygenerowania odpowiedzi. Tokeny są wybierane w kolejności od najbardziej (patrz Top-K) do najmniej prawdopodobnych, aż suma ich prawdopodobieństw będzie równa wartości Top-P. Jeśli na przykład tokeny A, B i C mają prawdopodobieństwa 0,3, 0,2 i 0,1, a wartością Top-P jest 0,5, jako kolejny token model wybierze A lub B (z użyciem temperatury), a token C zostanie wykluczony.
Jeśli chcesz uzyskiwać mniej losowe odpowiedzi, podaj niższą wartość, a jeśli bardziej – wyższą. Wartość domyślna parametru Top-P to 0,80.
Zadanie 2. Różne wartości parametrów
Możesz teraz wypróbować różne wartości parametrów.
-
W Menu nawigacyjnym () konsoli Google Cloud, w sekcji Sztuczna inteligencja, wybierz Vertex AI.
-
W panelu Narzędzia po lewej stronie kliknij Język w sekcji Vertex AI Studio. Następnie kliknij Prompt tekstowy na stronie Rozpocznij.
-
Wpisz ten prompt:
-
W polu w sekcji Parametry wybierz gemini-1.0-pro-001 jako model i zmień temperaturę z 0,9 na 1. Ustaw region na us-central1. Kliknij Prześlij. Nazwij swój prompt i zapisz go. Przeczytaj odpowiedź, aby zobaczyć, jak zmienia się ona pod wpływem różnych wartości temperatury.
-
W sekcji Parametry zmień Limit tokenów z 2048 na 1024. Kliknij Prześlij i Zapisz. Przeczytaj odpowiedź, aby zobaczyć, jak zmienia się ona wraz ze zmianami limitu tokenów.
-
W sekcji Parametry kliknij przycisk przełącznika Zaawansowane, aby zmienić wartość Top-K na 1. Kliknij Prześlij i Zapisz. Przeczytaj odpowiedź, aby zobaczyć, jak zmienia się ona pod wpływem różnych wartości Top-K.
-
W sekcji Parametry zmień wartość Top-P na 1. Kliknij Prześlij i Zapisz. Przeczytaj odpowiedź, aby zobaczyć, jak zmienia się ona pod wpływem różnych wartości Top-P.
Kliknij Sprawdź postępy, aby zobaczyć, jak Ci poszło.
Zadanie 3. Streszczanie tekstu przy użyciu modeli generatywnych w Vertex AI
Utwórz streszczenia z najważniejszymi informacjami o domach, aby usprawnić proces wyszukiwania.
-
W notatniku JupyterLab kliknij dwukrotnie, aby otworzyć plik
housing_text_summarization.ipynb
w panelu po lewej stronie. -
Kliknij Edytuj > Wyczyść wszystkie dane wyjściowe.
-
Uważnie przeczytaj instrukcje notatnika i uruchom kod w każdej komórce.
Gratulacje!
Masz teraz doświadczenie w używaniu AI Studio oraz interfejsu PaLM API do tworzenia i testowania promptów na potrzeby różnych zastosowań generatywnej AI. Znasz już również interfejs AI Studio, co pozwoliło Ci utworzyć prompty tekstowe i prompty w kodzie przy użyciu różnych parametrów.
Kolejne kroki / Więcej informacji
-
Aby dowiedzieć się więcej o projektowaniu promptów, zapoznaj się z oficjalną dokumentacją.
-
Zobacz notatniki wykorzystane w tym module.
Szkolenia i certyfikaty Google Cloud
…pomogą Ci wykorzystać wszystkie możliwości technologii Google Cloud. Nasze zajęcia obejmują umiejętności techniczne oraz sprawdzone metody, które ułatwią Ci szybką naukę i umożliwią jej kontynuację. Oferujemy szkolenia na poziomach od podstawowego po zaawansowany prowadzone w trybach wirtualnym, na żądanie i na żywo, dzięki czemu możesz dopasować program szkoleń do swojego napiętego harmonogramu. Certyfikaty umożliwią udokumentowanie i potwierdzenie Twoich umiejętności oraz doświadczenia w zakresie technologii Google Cloud.
Ostatnia aktualizacja instrukcji: 5 marca 2024 r.
Ostatni test modułu: 5 marca 2024 r.
Copyright 2024 Google LLC. Wszelkie prawa zastrzeżone. Google i logo Google są znakami towarowymi Google LLC. Wszelkie inne nazwy firm i produktów mogą być znakami towarowymi odpowiednich podmiotów, z którymi są powiązane.