יצירת מחברת

במדריך הזה משתמשים ב-Agent Platform SDK ב-Jupyter notebook כדי לקבל תחזיות באמצעות מופע של Agent Platform Workbench של Gemini Enterprise.

בקטע הזה מוסבר איך ליצור מחברת Jupyter במכונה של Agent Platform Workbench. מקרים של Agent Platform Workbench הם סביבות פיתוח מבוססות מחברת Jupyter לכל תהליך העבודה של מדעי הנתונים. מכונות Agent Platform Workbench מגיעות עם JupyterLab ועם חבילה מותקנת מראש של חבילות ללמידה עמוקה, כולל תמיכה ב-frameworks‏ TensorFlow ו-PyTorch. מידע נוסף זמין במאמר מבוא למופעים של Agent Platform Workbench.

אחרי שיוצרים מחברת ב-Agent Platform Workbench, מריצים חלקים רציפים של קוד Python כדי לבצע את רוב העבודה שנדרשת ליצירת התחזיות.

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

  1. נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Gemini Enterprise Agent Platform and Notebooks APIs.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Gemini Enterprise Agent Platform and Notebooks APIs.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

יצירת מופע של Agent Platform Workbench

כדי ליצור מופע של Agent Platform Workbench:

  1. במסוף Google Cloud , פותחים את הפרויקט Google Cloud אם הוא לא פתוח כבר.

  2. נכנסים לדף Instances ב-Agent Platform Workbench במסוף Google Cloud .

    כניסה לדף Instances

  3. אם מופיעה האפשרות להפעיל את Notebooks API, לוחצים על Enable. תהליך ההפעלה עשוי להימשך כמה רגעים.

  4. לוחצים על  יצירת פריט חדש.

  5. בתיבת הדו-שיח New instance (מכונה חדשה), בשדה Name (שם), מזינים שם למכונה.

  6. בשדה Region, בוחרים באפשרות us-central1 (Iowa).

  7. בשדה Zone, בוחרים באפשרות us-central1-a.

  8. לוחצים על יצירה. כדי לקבל מידע נוסף על המכונה, אחרי שהיא מופיעה ברשימת המכונות, לוחצים על השם שלה כדי לראות את המאפיינים שלה.

הכנת ה-Notebook

המופע של Agent Platform Workbench כבר מאומת לשימוש בפרויקט Google Cloud . עם זאת, צריך להתקין ולאתחל את Agent Platform SDK ל-Python. בקטע הזה מוסבר איך לבצע את השלבים האלה.

אחרי שיוצרים את המחברת, משתמשים בה כדי להזין ולהריץ את קטעי הקוד הרציפים במדריך הזה. צריך להפעיל כל קטע קוד בנפרד ובסדר הנכון.

יצירה ופתיחה של Notebook

בנוטבוק מריצים את הקוד שבמדריך הזה. זה קובץ עם הסיומת .ipynb. כשיוצרים אותו, הוא לא מקבל שם. אפשר לשנות את השם שלו אחרי הפתיחה. כדי ליצור ולפתוח את ה-Notebook:

  1. נכנסים לדף Instances במסוף Google Cloud .

    כניסה לדף Instances

  2. לצד שם המכונה, לוחצים על Open JupyterLab.

    המופע של Agent Platform Workbench פותח את סביבת JupyterLab.

  3. ב-JupyterLab, בוחרים באפשרות קובץ > חדש > מחברת.

    קובץ המחברת החדש ייפתח ותיבת הדו-שיח Select kernel תופיע.

  4. בתיבת הדו-שיח Select kernel, בוחרים את ליבת Python 3.

  5. בחלונית הניווט הימנית של JupyterLab, מחפשים את ה-notebook החדש שנקרא Untitled.ipynb. כדי לשנות את השם, לוחצים לחיצה ימנית על שם הנוטבוק, לוחצים על שינוי השם ומזינים שם חדש.

התקנה של Agent Platform SDK ל-Python

אחרי שפותחים את המחברת, צריך להתקין את Agent Platform SDK for Python. משתמשים ב-Agent Platform SDK for Python כדי לבצע קריאות ל-Agent Platform API שיוצרות את מערך הנתונים, יוצרות את המודל, מאמנות ומפריסות את המודל ומבצעות חיזויים באמצעות המודל. מידע נוסף זמין במאמר בנושא שימוש ב-Agent Platform SDK ל-Python.

כשמתקינים את Agent Platform SDK for Python, מותקנים גם ערכות SDK אחרות Google Cloud שהוא תלוי בהן. במדריך הזה נעשה שימוש בשתי ערכות SDK:

כדי להתקין את Agent Platform SDK ל-Python ואת ערכות ה-SDK שתלויות בו, מריצים את הקוד הבא.

# Install the Agent Platform SDK
! pip3 install --upgrade --quiet google-cloud-aiplatform

הדגל --quiet משתיק את הפלט כך שרק שגיאות יוצגו, אם יש כאלה. סימן הקריאה (!) מציין שזו פקודת מעטפת.

זו הפעם הראשונה שאתם מריצים קוד ב-notebook החדש, ולכן צריך להזין אותו בתא הקוד הריק בחלק העליון של ה-notebook. אחרי שמזינים קוד בתא קוד, לוחצים על  הפעלת התאים שנבחרו ומעבר או משתמשים במקש הקיצור Shift + Enter כדי להריץ את הקוד.

מריצים קוד כדי להתקין את ה-SDK.

במהלך המדריך הזה, מריצים קוד בתא הקוד הריק שמופיע באופן אוטומטי מתחת לקוד שהורץ לאחרונה. כדי להוסיף תא קוד חדש באופן ידני, לוחצים על הלחצן  הוספת תא מתחת בקובץ המחברת.

הוספה של תא קוד חדש.

הגדרת מזהה הפרויקט והאזור

בשלב הזה, מקצים את מזהה הפרויקט ואת האזור למשתנים כדי שאפשר יהיה להפנות אליהם בהמשך המדריך הזה.

הגדרת מזהה הפרויקט

כדי להגדיר את מזהה הפרויקט:

  1. מאתרים את Google Cloud מזהה הפרויקט. מידע נוסף זמין במאמר איך מאתרים את מזהה הפרויקט.

  2. מריצים את הקוד הבא בתא קוד ב-notebook. בקוד, מחליפים את PROJECT_ID במזהה הפרויקט שאיתרתם. הפלט שנוצר מהפקודה הזו הוא Updated property [core/project].

    project_id = "PROJECT_ID"  # @param {type:"string"}
    

הגדרת האזור

במדריך הזה נעשה שימוש באזור us-central1. כדי להגדיר את האזור:

  1. מריצים את הקוד הבא כדי להגדיר את המשתנה region שמשמש את Gemini Enterprise Agent Platform ל-us-central1. הפקודה הזו לא יוצרת פלט. מידע נוסף זמין במאמר בנושא בחירת מיקום.

    region = "us-central1"  # @param {type: "string"}
    

יצירת קטגוריה של Cloud Storage

כדי לבצע את ההדרכה הזו, צריך קטגוריה של Cloud Storage שמשמשת את Gemini Enterprise Agent Platform לאחסון זמני של ארטיפקטים. פלטפורמת הסוכנים של Gemini Enterprise מאחסנת את הנתונים שמשויכים למערך הנתונים שאתם יוצרים ואת משאבי המודל בדלי ההעברה הזמנית. הנתונים האלה נשמרים וזמינים בסשנים שונים. במדריך הזה, Gemini Enterprise Agent Platform גם מאחסן את מערך הנתונים שלכם בקטגוריית הביניים. מציינים את קטגוריית הביניים כשמפעילים את Agent Platform SDK ל-Python.

כל שם של קטגוריית Cloud Storage חייב להיות ייחודי באופן גלובלי. אם תבחרו שם שכבר נמצא בשימוש, הפקודה ליצירת הקטגוריה תיכשל. הקוד הבא משתמש בחותמת תאריך ושעה ובשם הפרויקט כדי ליצור שם ייחודי לקטגוריה. מוסיפים את שם הקטגוריה ל-gs:// כדי ליצור את ה-URI של הקטגוריה ב-Cloud Storage. פקודת ה-shell‏ echo מציגה את ה-URI כדי שתוכלו לוודא שהוא נוצר בצורה נכונה.

  1. כדי להגדיר את השם וה-URI של הקטגוריה, מריצים את הקוד הבא. בשורה האחרונה מוצג ה-URI של הקטגוריה שלכם ב-Cloud Storage.

    bucket_name = "bucket-name-placeholder"  # @param {type:"string"}
    bucket_uri = f"gs://{bucket_name}"
    
    from datetime import datetime
    timestamp = datetime.now().strftime("%Y%m%d%H%M%S")
    
    if bucket_name == "" or bucket_name is None or bucket_name == "bucket-name-placeholder":
        bucket_name = project_id + "aip-" + timestamp
        bucket_uri = "gs://" + bucket_name
    ! echo $bucket_uri
    
  2. כדי ליצור קטגוריה באמצעות ספריית הלקוח של Cloud Storage וכתובת ה-URI של הקטגוריה, מריצים את הקוד הבא. הקוד הזה לא יוצר פלט.

    from google.cloud import storage
    client = storage.Client(project=project_id)
    
    # Create a bucket
    bucket = client.create_bucket(bucket_name, location=region)
    
  3. כדי לוודא שהבאקט נוצר בהצלחה, מריצים את הפקודה הבאה:

    print("Bucket {} created.".format(bucket.name))
    

אתחול של Agent Platform SDK ל-Python

כדי להפעיל את Agent Platform SDK ל-Python, קודם מייבאים את הספרייה שלו, aiplatform. לאחר מכן קוראים לפונקציה aiplatform.init ומעבירים ערכים לפרמטרים הבאים:

  • project – הפרמטר project מציין באיזה Google Cloud פרויקט להשתמש כשמשתמשים ב-Agent Platform SDK for Python כדי לבצע קריאות ל-Agent Platform API. במדריך הזה מציינים את הפרויקט Google Cloud באמצעות השם שלו. אפשר גם לציין את הפרויקט באמצעות מספר הפרויקט.

  • locationlocation מציין באיזה אזור להשתמש Google Cloud כשמבצעים קריאות ל-API. אם לא מציינים מיקום, Agent Platform SDK for Python משתמש ב-us-central1.

  • staging_bucket – הפרמטר staging_bucket מציין באיזו קטגוריה של Cloud Storage נעשה שימוש כדי להכין ארטיפקטים כשמשתמשים ב-Agent Platform SDK for Python. מציינים את הדלי באמצעות URI שמתחיל ב-gs://. במדריך הזה משתמשים ב-URI שנוצר קודם ביצירת קטגוריה של Cloud Storage.

כדי להגדיר את Google Cloud הפרויקט, האזור וקטגוריית הביניים, מריצים את הפקודה הבאה. הפקודה הזו לא יוצרת פלט.

from google.cloud import aiplatform

# Initialize the Agent Platform SDK
aiplatform.init(project=project_id, location=region, staging_bucket=bucket_uri)

הפעלה ראשונית של BigQuery

במדריך הזה משתמשים במערך נתונים ציבורי של פינגווינים ב-BigQuery כדי לאמן מודל. אחרי שמערכת Gemini Enterprise Agent Platform מאמנת את המודל, אתם מציינים פרמטרים שמייצגים מאפיינים של פינגווינים, והמודל משתמש במאפיינים האלה כדי לחזות את מין הפינגווין שהם מייצגים. מידע נוסף על מערכי נתונים ציבוריים זמין במאמר מערכי נתונים ציבוריים של BigQuery.

לפני שמשתמשים במערך הנתונים ב-BigQuery, צריך לאתחל את BigQuery עם מזהה הפרויקט. כדי לעשות את זה, מריצים את הפקודה הבאה. הפקודה הזו לא יוצרת פלט.

from google.cloud import bigquery

# Set up BigQuery client
bq_client = bigquery.Client(project=project_id)