Funkcja w Cloud Functions opakowująca modele Bison w modelu PaLM

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

  • przeglądarki, na przykład Chrome lub Firefox;
  • Projekt Google Cloud z włączonymi płatnościami

3. Zanim zaczniesz

  1. Na stronie selektora projektów w konsoli Google Cloud wybierz lub utwórz projekt Google Cloud.
  2. 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.
  3. Aktywuj Cloud Shell z konsoli Google Cloud, wykonując instrukcje opisane tutaj
  4. Jeśli Twój projekt nie jest skonfigurowany, ustaw go za pomocą tego polecenia:
gcloud config set project <YOUR_PROJECT_ID>
  1. W Cloud Shell ustaw te zmienne środowiskowe:
export GCP_PROJECT=<YOUR_PROJECT_ID>
export GCP_REGION=us-central1
  1. 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:

  1. 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
  1. To polecenie spowoduje sklonowanie zawartości repozytorium do folderu genai-templates-googlecloud.
  2. 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
  1. Oba pliki main.py i requirements.txt powinny znajdować się w folderze text-predict-cloudfunction (wykonaj polecenie dir lub otwórz edytor Cloud Shell).
  2. 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:

3470e0a6d0a30b37.png

6. Czyszczenie danych

Aby uniknąć obciążenia konta Google Cloud opłatami za zasoby zużyte w tym poście, wykonaj te czynności:

  1. W konsoli Google Cloud otwórz stronę Zarządzanie zasobami.
  2. Na liście projektów wybierz projekt do usunięcia, a potem kliknij Usuń.
  3. W oknie wpisz identyfikator projektu i kliknij Wyłącz, aby usunąć projekt.
  4. 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.