פונקציה של Cloud Functions שעופפת את מודלי PaLM Text Bison

1. מבוא

ב-Codelab הזה מוסבר איך להפעיל פונקציה של Cloud Functions שמאתחלת את המודול של Vertex AI, ולאחר מכן מספקת נקודת קצה (endpoint) להפעלת מודל PaLM Text Bison. הפונקציה של Cloud Functions כתובה ב-Python. זוהי רשימת השירותים שבהם נעשה שימוש:

  • Cloud Functions
  • Vertex AI PaLM API

מה תפַתחו

יוצרים ופורסים פונקציה של Cloud Functions שמספקת נקודת קצה להפעלת מודל PaLM Text Bison.

2. דרישות

  • דפדפן כמו Chrome או Firefox
  • פרויקט ב-Google Cloud שמופעל בו חיוב

3. לפני שמתחילים

  1. במסוף Google Cloud, בדף בורר הפרויקטים, בוחרים או יוצרים פרויקט ב-Google Cloud.
  2. צריך לוודא שהחיוב מופעל בפרויקט שלכם ב-Cloud. איך בודקים אם החיוב מופעל בפרויקט
  3. מפעילים את Cloud Shell ממסוף Google Cloud לפי ההוראות שמפורטות כאן.
  4. אם הפרויקט לא מוגדר, מגדירים אותו באמצעות הפקודה הבאה:
gcloud config set project <YOUR_PROJECT_ID>
  1. ב-Cloud Shell, מגדירים את משתני הסביבה הבאים:
export GCP_PROJECT=<YOUR_PROJECT_ID>
export GCP_REGION=us-central1
  1. כדי להפעיל את ממשקי ה-API הנחוצים של Google Cloud, מריצים את הפקודות הבאות בטרמינל של Cloud Shell:
gcloud services enable cloudbuild.googleapis.com cloudfunctions.googleapis.com run.googleapis.com logging.googleapis.com storage-component.googleapis.com aiplatform.googleapis.com

4. פריסת הפונקציה ב-Cloud Functions

כדי ליצור ולפרוס את Cloud Functions, פועלים לפי השלבים הבאים:

  1. מריצים את הפקודה הבאה בטרמינל ב-Cloud Shell כדי לשכפל את הקוד מהמאגר https://github.com/rominirani/genai-apptemplates-googlecloud:
git clone https://github.com/rominirani/genai-apptemplates-googlecloud
  1. הפקודה הזו תשכפל את תוכן המאגר לתיקייה genai-templates-googlecloud.
  2. כדי להגיע לתיקייה של הפרויקט הרצוי, מריצים את הפקודה הבאה מהטרמינל של Cloud Shell:
cd genai-apptemplates-googlecloud/text-predict-cloudfunction
  1. אתם אמורים לראות את הקבצים main.py ו-requirements.txt בתיקייה text-predict-cloudfunction, על ידי הרצת הפקודה dir או מעבר אל Cloud Shell Editor.
  2. כדי לפרוס את הפונקציה של Cloud Functions, מריצים את הפקודה gcloud functions 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

אחרי שפורסים את הפונקציה של Cloud Functions, כתובת ה-URL של הפונקציה של Cloud Functions שנפרסה מוצגת בטרמינל של Cloud Shell. כתובת ה-URL בפורמט הבא:

https://$GCP_REGION-$GCP_PROJECT.cloudfunctions.net/predictText

5. הפעלת הפונקציה של Cloud Functions

מכיוון שהפונקציה של Cloud Functions פרוסה באמצעות טריגר HTTP, ניתן להפעיל אותה באופן ישיר. הנה שיחה לדוגמה:

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?"
}'

הפלט אמור להיראות כך:

3470e0a6d0a30b37.png

6. הסרת המשאבים

כדי להימנע מצבירת חיובים בחשבון Google Cloud על המשאבים שבהם השתמשתם בפוסט הזה:

  1. במסוף Google Cloud, נכנסים לדף Manage resources:
  2. ברשימת הפרויקטים, בוחרים את הפרויקט שרוצים למחוק ולוחצים על Delete.
  3. כדי למחוק את הפרויקט, כותבים את מזהה הפרויקט בתיבת הדו-שיח ולוחצים על Shut down.
  4. כדי להשאיר את הפרויקט, מדלגים אל Cloud Functions ומוחקים את הפונקציה של Cloud Functions. ברשימת הפונקציות, מסמנים את הפונקציה שרוצים למחוק ולוחצים על DELETE.

7. מזל טוב

מעולה! השתמשתם בהצלחה בפונקציה של Cloud Functions שעופפת את מודל PaLM Text Bison. אתם יכולים לעיין במסמכי התיעוד של Vertex AI LLM כדי לקבל מידע נוסף על המודלים הזמינים.