1. Wprowadzenie
Z tego ćwiczenia w Codelabs dowiesz się, jak wywołać funkcję w Cloud Functions, która inicjuje moduł Vertex AI, a następnie udostępnia punkt końcowy do wywoływania modelu PaLM Text Bison. Ta funkcja w Cloud Functions została napisana w Pythonie. Oto lista wykorzystywanych usług:
- Cloud Functions
- Interfejs Vertex AI PaLM API
Co utworzysz
Utworzysz i wdrożysz funkcję w Cloud Functions, która udostępnia punkt końcowy do wywoływania modelu bizona tekstu PaLM.
2. Wymagania
3. Zanim zaczniesz
- Na stronie selektora projektów w konsoli Google Cloud wybierz lub utwórz projekt Google Cloud.
- Sprawdź, czy w projekcie Google Cloud są włączone płatności. Dowiedz się, jak sprawdzić, czy w projekcie są włączone płatności.
- Aktywuj Cloud Shell z konsoli Google Cloud, wykonując instrukcje opisane tutaj
- Jeśli Twój projekt nie jest skonfigurowany, ustaw go za pomocą tego polecenia:
gcloud config set project <YOUR_PROJECT_ID>
- W Cloud Shell ustaw te zmienne środowiskowe:
export GCP_PROJECT=<YOUR_PROJECT_ID>
export GCP_REGION=us-central1
- Włącz niezbędne interfejsy API Google Cloud, wykonując w terminalu Cloud Shell te polecenia:
gcloud services enable cloudbuild.googleapis.com cloudfunctions.googleapis.com run.googleapis.com logging.googleapis.com storage-component.googleapis.com aiplatform.googleapis.com
4. Wdrażanie funkcji w Cloud Functions
Aby utworzyć i wdrożyć funkcje w Cloud Functions, wykonaj te czynności:
- Skopiuj kod z repozytorium https://github.com/rominirani/genai-apptemplates-googlecloud, wykonując w terminalu Cloud Shell to polecenie:
git clone https://github.com/rominirani/genai-apptemplates-googlecloud
- To polecenie spowoduje sklonowanie zawartości repozytorium do folderu genai-templates-googlecloud.
- Przejdź do folderu projektu, który jest dla nas ważny, wykonując w terminalu Cloud Shell to polecenie:
cd genai-apptemplates-googlecloud/text-predict-cloudfunction
- Oba pliki main.py i requirements.txt powinny znajdować się w folderze text-predict-cloudfunction (wykonaj polecenie dir lub otwórz edytor Cloud Shell).
- Aby wdrożyć funkcję w Cloud Functions, uruchom polecenie gcloud functionality deploy:
gcloud functions deploy predictText --gen2 --runtime=python311 --region=$GCP_REGION --source=. --entry-point=predictText --trigger-http --set-env-vars=GCP_PROJECT=$GCP_PROJECT,GCP_REGION=$GCP_REGION --allow-unauthenticated --max-instances=1
Po wdrożeniu funkcji w Cloud Functions adres URL wdrożonej funkcji w Cloud Functions jest wyświetlany w terminalu Cloud Shell. Adres URL ma następujący format:
https://$GCP_REGION-$GCP_PROJECT.cloudfunctions.net/predictText
5. Wywoływanie funkcji w Cloud Functions
Ta funkcja w Cloud Functions jest wdrożona z aktywatorem HTTP, więc można ją wywołać bezpośrednio. Oto przykładowe wywołanie:
curl -m 70 -X POST https://$GCP_REGION-$GCP_PROJECT.cloudfunctions.net/predictText \
-H "Content-Type: application/json" \
-d '{
"prompt": "What are the best places to visit in the United States?"
}'
Dane wyjściowe wyglądają tak:
6. Czyszczenie danych
Aby uniknąć obciążenia konta Google Cloud opłatami za zasoby zużyte w tym poście, wykonaj te czynności:
- W konsoli Google Cloud otwórz stronę Zarządzanie zasobami.
- Na liście projektów wybierz projekt do usunięcia, a potem kliknij Usuń.
- W oknie wpisz identyfikator projektu i kliknij Wyłącz, aby usunąć projekt.
- Jeśli chcesz zachować projekt, pomiń powyższe kroki i usuń funkcję w Cloud Functions, przechodząc do Cloud Functions i z listy funkcji zaznacz tę, którą chcesz usunąć, i kliknij USUŃ.
7. Gratulacje
Gratulacje! Udało Ci się użyć funkcji w Cloud Functions, która opakowuje model bizonu tekstowego PaLM. Więcej informacji o dostępnych modelach znajdziesz w dokumentacji usługi Vertex AI LLM.