שימוש במודלים ב-Model Garden

אפשר לגלות, לבדוק, לכוונן ולפרוס מודלים באמצעות Model Garden במסוףGoogle Cloud . אפשר גם לפרוס מודלים מ-Model Garden באמצעות Google Cloud CLI.

שליחת פרומפטים לבדיקה

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

    כניסה ל-Model Garden

  2. מוצאים דגם נתמך שרוצים לבדוק ולוחצים על הצגת פרטים.

  3. לוחצים על Open prompt design (פתיחת עיצוב ההנחיה).

    אתם מועברים לדף עיצוב הנחיות.

  4. בתיבת הנחיה, מזינים את ההנחיה שרוצים לבדוק.

  5. אופציונלי: מגדירים את הפרמטרים של המודל.

  6. לוחצים על שליחה.

כוונון מודל

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

    כניסה ל-Model Garden

  2. בקטע Search models (חיפוש מודלים), מזינים Gemma 3 ולוחצים על סמל זכוכית המגדלת כדי לחפש.

  3. בכרטיס המודל של Gemma 3, לוחצים על הצגת פרטים.

  4. לוחצים על Open fine-tuning pipeline (פתיחת צינור של כוונון עדין).

    אתם מועברים לדף Agent Platform Pipelines (צינורות של פלטפורמת הסוכן).

  5. כדי להתחיל את ההתאמה, לוחצים על יצירת הרצה.

התאמה אישית של Notebook

ברוב כרטיסי המודלים של מודלים בסיסיים ומודלים שניתנים לכוונון של קוד פתוח יש תמיכה בכוונון ב-Notebook.

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

    כניסה ל-Model Garden

  2. מוצאים מודל נתמך שרוצים לכוונן ועוברים לכרטיס המודל שלו.

  3. לוחצים על פתיחת Notebook.

פריסת מודל פתוח

אפשר לפרוס מודל באמצעות כרטיס המודל שלו ב Google Cloud מסוף או באופן פרוגרמטי.

למידע נוסף על הגדרת Google Gen AI SDK או Google Cloud CLI, אפשר לעיין במאמר סקירה כללית של Google Gen AI SDK או במאמר התקנת Google Cloud CLI.

המסוף

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

    כניסה ל-Model Garden

  2. מוצאים מודל נתמך שרוצים לפרוס ולוחצים על כרטיס המודל שלו.

  3. לוחצים על Deploy (פריסה) כדי לפתוח את החלונית Deploy model (פריסת מודל).

  4. בחלונית Deploy model (פריסת המודל), מציינים את פרטי הפריסה.

    1. משתמשים בשמות של המודל ונקודת הקצה שנוצרו או משנים אותם.
    2. בוחרים מיקום שבו רוצים ליצור את נקודת הקצה של המודל.
    3. בוחרים את סוג המכונה שבה רוצים להשתמש לכל צומת בפריסה.
    4. כדי להשתמש בהזמנה ב-Compute Engine, בקטע Deployment settings (הגדרות פריסה), בוחרים באפשרות Advanced (מתקדם).

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

    • שימוש אוטומטי במקום שמור שנוצר: Gemini Enterprise Agent Platform בוחרת באופן אוטומטי מקום שמור מותר עם מאפיינים תואמים. אם אין קיבולת בהזמנה שנבחרה אוטומטית, Gemini Enterprise Agent Platform משתמש במאגר הכללי Google Cloud של המשאבים.
    • בחירת הזמנות ספציפיות: Gemini Enterprise Agent Platform משתמש בהזמנה ספציפית. אם אין קיבולת להזמנה שבחרתם, תוצג שגיאה.
    • לא להשתמש (ברירת מחדל): Gemini Enterprise Agent Platform משתמש במאגר הכללי של משאביGoogle Cloud . הערך הזה משפיע כמו אי-ציון הזמנה.
  5. לוחצים על פריסה.

Python

במאמר התקנת Vertex AI SDK ל-Python מוסבר איך להתקין או לעדכן את Vertex AI SDK ל-Python. מידע נוסף מופיע ב מאמרי העזרה של Python API.

  1. מציגים את רשימת המודלים שאפשר לפרוס ורושמים את מזהה המודל לפריסה. אפשר גם לראות את רשימת המודלים הנתמכים של Hugging Face ב-Model Garden, ואפילו לסנן אותם לפי שמות המודלים. הפלט לא כולל מודלים שעברו התאמה.

    
    import vertexai
    from vertexai import model_garden
    
    # TODO(developer): Update and un-comment below lines
    # PROJECT_ID = "your-project-id"
    vertexai.init(project=PROJECT_ID, location="us-central1")
    
    # List deployable models, optionally list Hugging Face models only or filter by model name.
    deployable_models = model_garden.list_deployable_models(list_hf_models=False, model_filter="gemma")
    print(deployable_models)
    # Example response:
    # ['google/gemma2@gemma-2-27b','google/gemma2@gemma-2-27b-it', ...]
    
  2. כדי לראות את מפרטי הפריסה של מודל, משתמשים במזהה המודל מהשלב הקודם. אפשר לראות את סוג המכונה, סוג המאיץ ואת ה-URI של קובץ אימג' של קונטיינר שאומתו על ידי Model Garden עבור מודל מסוים.

    
    import vertexai
    from vertexai import model_garden
    
    # TODO(developer): Update and un-comment below lines
    # PROJECT_ID = "your-project-id"
    # model = "google/gemma3@gemma-3-1b-it"
    vertexai.init(project=PROJECT_ID, location="us-central1")
    
    # For Hugging Face modelsm the format is the Hugging Face model name, as in
    # "meta-llama/Llama-3.3-70B-Instruct".
    # Go to https://console.cloud.google.com/vertex-ai/model-garden to find all deployable
    # model names.
    
    model = model_garden.OpenModel(model)
    deploy_options = model.list_deploy_options()
    print(deploy_options)
    # Example response:
    # [
    #   dedicated_resources {
    #     machine_spec {
    #       machine_type: "g2-standard-12"
    #       accelerator_type: NVIDIA_L4
    #       accelerator_count: 1
    #     }
    #   }
    #   container_spec {
    #     ...
    #   }
    #   ...
    # ]
    
  3. פורסים מודל בנקודת קצה. ב-Model Garden נעשה שימוש בהגדרת הפריסה שמוגדרת כברירת מחדל, אלא אם מציינים ארגומנטים וערכים נוספים.

    
    import vertexai
    from vertexai import model_garden
    
    # TODO(developer): Update and un-comment below lines
    # PROJECT_ID = "your-project-id"
    vertexai.init(project=PROJECT_ID, location="us-central1")
    
    open_model = model_garden.OpenModel("google/gemma3@gemma-3-12b-it")
    endpoint = open_model.deploy(
        machine_type="g2-standard-48",
        accelerator_type="NVIDIA_L4",
        accelerator_count=4,
        accept_eula=True,
    )
    
    # Optional. Run predictions on the deployed endoint.
    # endpoint.predict(instances=[{"prompt": "What is Generative AI?"}])
    

REST

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

1. הצגת רשימת המודלים שאפשר לפרוס

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • QUERY_PARAMETERS: כדי להציג רשימה של מודלים ב-Model Garden, מוסיפים את פרמטרי השאילתה הבאים listAllVersions=True&filter=can_deploy(true). כדי להציג רשימה של מודלים של Hugging Face, מגדירים את המסנן ל-alt=json&is_hf_wildcard(true)+AND+labels.VERIFIED_DEPLOYMENT_CONFIG%3DVERIFIED_DEPLOYMENT_SUCCEED&listAllVersions=True.

ה-method של ה-HTTP וכתובת ה-URL:

GET https://us-central1-aiplatform.googleapis.com/v1/publishers/*/models?QUERY_PARAMETERS

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: PROJECT_ID" \
"https://us-central1-aiplatform.googleapis.com/v1/publishers/*/models?QUERY_PARAMETERS"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/publishers/*/models?QUERY_PARAMETERS" | Select-Object -Expand Content

מקבלים תגובת JSON שדומה לזו.

{
  "publisherModels": [
    {
      "name": "publishers/google/models/gemma3",
      "versionId": "gemma-3-1b-it",
      "openSourceCategory": "GOOGLE_OWNED_OSS_WITH_GOOGLE_CHECKPOINT",
      "supportedActions": {
        "openNotebook": {
          "references": {
            "us-central1": {
              "uri": "https://colab.research.google.com/github/GoogleCloudPlatform/vertex-ai-samples/blob/main/notebooks/community/model_garden/model_garden_gradio_streaming_chat_completions.ipynb"
            }
          },
          "resourceTitle": "Notebook",
          "resourceUseCase": "Chat Completion Playground",
          "resourceDescription": "Chat with deployed Gemma 2 endpoints via Gradio UI."
        },
        "deploy": {
          "modelDisplayName": "gemma-3-1b-it",
          "containerSpec": {
            "imageUri": "us-docker.pkg.dev/vertex-ai/vertex-vision-model-garden-dockers/pytorch-vllm-serve:20250312_0916_RC01",
            "args": [
              "python",
              "-m",
              "vllm.entrypoints.api_server",
              "--host=0.0.0.0",
              "--port=8080",
              "--model=gs://vertex-model-garden-restricted-us/gemma3/gemma-3-1b-it",
              "--tensor-parallel-size=1",
              "--swap-space=16",
              "--gpu-memory-utilization=0.95",
              "--disable-log-stats"
            ],
            "env": [
              {
                "name": "MODEL_ID",
                "value": "google/gemma-3-1b-it"
              },
              {
                "name": "DEPLOY_SOURCE",
                "value": "UI_NATIVE_MODEL"
              }
            ],
            "ports": [
              {
                "containerPort": 8080
              }
            ],
            "predictRoute": "/generate",
            "healthRoute": "/ping"
          },
          "dedicatedResources": {
            "machineSpec": {
              "machineType": "g2-standard-12",
              "acceleratorType": "NVIDIA_L4",
              "acceleratorCount": 1
            }
          },
          "publicArtifactUri": "gs://vertex-model-garden-restricted-us/gemma3/gemma3.tar.gz",
          "deployTaskName": "vLLM 128K context",
          "deployMetadata": {
            "sampleRequest": "{\n    \"instances\": [\n        {\n          \"@requestFormat\": \"chatCompletions\",\n          \"messages\": [\n              {\n                  \"role\": \"user\",\n                  \"content\": \"What is machine learning?\"\n              }\n          ],\n          \"max_tokens\": 100\n        }\n    ]\n}\n"
          }
        },
        ...

2. פריסת מודל

פריסת מודל מ-Model Garden או מ-Hugging Face. אפשר גם להתאים אישית את הפריסה על ידי ציון שדות JSON נוספים.

פריסת מודל עם הגדרות ברירת המחדל שלו.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • LOCATION: אזור שבו המודל פרוס.
  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • MODEL_ID: המזהה של המודל שרוצים לפרוס. אפשר לקבל אותו מרשימת כל המודלים שאפשר לפרוס. המזהה הוא בפורמט הבא: publishers/PUBLISHER_NAME/models/ MODEL_NAME@MODEL_VERSION.

ה-method של ה-HTTP וכתובת ה-URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:deploy

גוף בקשת JSON:

{
  "publisher_model_name": "MODEL_ID",
  "model_config": {
    "accept_eula": "true"
  }
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

curl

שומרים את גוף הבקשה בקובץ בשם request.json. כדי ליצור או להחליף את הקובץ הזה בספרייה הנוכחית, מריצים את הפקודה הבאה בטרמינל:

cat > request.json << 'EOF'
{
  "publisher_model_name": "MODEL_ID",
  "model_config": {
    "accept_eula": "true"
  }
}
EOF

לאחר מכן מבצעים את הפקודה הבאה כדי לשלוח את בקשת ה-REST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:deploy"

PowerShell

שומרים את גוף הבקשה בקובץ בשם request.json. כדי ליצור או להחליף את הקובץ הזה בספרייה הנוכחית, מריצים את הפקודה הבאה בטרמינל:

@'
{
  "publisher_model_name": "MODEL_ID",
  "model_config": {
    "accept_eula": "true"
  }
}
'@  | Out-File -FilePath request.json -Encoding utf8

לאחר מכן מבצעים את הפקודה הבאה כדי לשלוח את בקשת ה-REST:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:deploy" | Select-Object -Expand Content

מקבלים תגובת JSON שדומה לזו.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.DeployOperationMetadata",
    "genericMetadata": {
      "createTime": "2025-03-13T21:44:44.538780Z",
      "updateTime": "2025-03-13T21:44:44.538780Z"
    },
    "publisherModel": "publishers/google/models/gemma3@gemma-3-1b-it",
    "destination": "projects/PROJECT_ID/locations/LOCATION",
    "projectNumber": "PROJECT_ID"
  }
}

פריסת מודל של Hugging Face

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • LOCATION: אזור שבו המודל פרוס.
  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • MODEL_ID: מזהה המודל של Hugging Face שרוצים לפרוס. אפשר לקבל אותו מתוך רשימת כל המודלים שניתנים לפריסה. המזהה הוא בפורמט הבא: PUBLISHER_NAME/MODEL_NAME.
  • ACCESS_TOKEN: אם המודל מוגבל, צריך לספק אסימון גישה.

ה-method של ה-HTTP וכתובת ה-URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:deploy

גוף בקשת JSON:

{
  "hugging_face_model_id": "MODEL_ID",
  "hugging_face_access_token": "ACCESS_TOKEN",
  "model_config": {
    "accept_eula": "true"
  }
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

curl

שומרים את גוף הבקשה בקובץ בשם request.json. כדי ליצור או להחליף את הקובץ הזה בספרייה הנוכחית, מריצים את הפקודה הבאה בטרמינל:

cat > request.json << 'EOF'
{
  "hugging_face_model_id": "MODEL_ID",
  "hugging_face_access_token": "ACCESS_TOKEN",
  "model_config": {
    "accept_eula": "true"
  }
}
EOF

לאחר מכן מבצעים את הפקודה הבאה כדי לשלוח את בקשת ה-REST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:deploy"

PowerShell

שומרים את גוף הבקשה בקובץ בשם request.json. כדי ליצור או להחליף את הקובץ הזה בספרייה הנוכחית, מריצים את הפקודה הבאה בטרמינל:

@'
{
  "hugging_face_model_id": "MODEL_ID",
  "hugging_face_access_token": "ACCESS_TOKEN",
  "model_config": {
    "accept_eula": "true"
  }
}
'@  | Out-File -FilePath request.json -Encoding utf8

לאחר מכן מבצעים את הפקודה הבאה כדי לשלוח את בקשת ה-REST:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:deploy" | Select-Object -Expand Content

מקבלים תגובת JSON שדומה לזו.

{
  "name": "projects/PROJECT_ID/locations/us-central1LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.DeployOperationMetadata",
    "genericMetadata": {
      "createTime": "2025-03-13T21:44:44.538780Z",
      "updateTime": "2025-03-13T21:44:44.538780Z"
    },
    "publisherModel": "publishers/PUBLISHER_NAME/model/MODEL_NAME",
    "destination": "projects/PROJECT_ID/locations/LOCATION",
    "projectNumber": "PROJECT_ID"
  }
}

פריסת מודל עם התאמות אישיות

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • LOCATION: אזור שבו המודל פרוס.
  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • MODEL_ID: המזהה של המודל שרוצים לפרוס. אפשר לקבל אותו מרשימת כל המודלים שאפשר לפרוס. המזהה הוא בפורמט הבא: publishers/PUBLISHER_NAME/models/ MODEL_NAME@MODEL_VERSION, לדוגמה: google/gemma@gemma-2b או stabilityai/stable-diffusion-xl-base-1.0.
  • MACHINE_TYPE: הגדרת קבוצת המשאבים לפריסה של המודל, כמו g2-standard-4.
  • ACCELERATOR_TYPE: מציינים מאיצים להוספה לפריסה כדי לשפר את הביצועים כשעובדים עם עומסי עבודה אינטנסיביים, כמו NVIDIA_L4
  • ACCELERATOR_COUNT: מספר המאיצים לשימוש בפריסה.
  • reservation_affinity_type: כדי להשתמש בהזמנה קיימת של Compute Engine לפריסה, מציינים הזמנה כלשהי או הזמנה ספציפית. אם מציינים את הערך הזה, לא מציינים את הערך spot.
  • spot: האם להשתמש ב-VM במודל Spot לפריסה.
  • IMAGE_URI: המיקום של קובץ אימג' של קונטיינר שבו רוצים להשתמש, למשל us-docker.pkg.dev/vertex-ai/vertex-vision-model-garden-dockers/pytorch-vllm-serve:20241016_0916_RC00_maas
  • CONTAINER_ARGS: ארגומנטים להעברה לקונטיינר במהלך הפריסה.
  • CONTAINER_PORT: מספר היציאה של הקונטיינר.
  • fast_tryout_enabled: כשבודקים מודל, אפשר לבחור להשתמש בפריסה מהירה יותר. האפשרות הזו זמינה רק למודלים בשימוש נרחב עם סוגים מסוימים של מכונות. אם האפשרות הזו מופעלת, אי אפשר לציין מודל או תצורות פריסה.

ה-method של ה-HTTP וכתובת ה-URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:deploy

גוף בקשת JSON:

{
  "publisher_model_name": "MODEL_ID",
  "deploy_config": {
    "dedicated_resources": {
      "machine_spec": {
        "machine_type": "MACHINE_TYPE",
        "accelerator_type": "ACCELERATOR_TYPE",
        "accelerator_count": ACCELERATOR_COUNT,
        "reservation_affinity": {
          "reservation_affinity_type": "ANY_RESERVATION"
        }
      },
      "spot": "false"
    }
  },
  "model_config": {
    "accept_eula": "true",
    "container_spec": {
      "image_uri": "IMAGE_URI",
      "args": [CONTAINER_ARGS ],
      "ports": [
        {
          "container_port": CONTAINER_PORT
        }
      ]
    }
  },
  "deploy_config": {
    "fast_tryout_enabled": false
  },
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

curl

שומרים את גוף הבקשה בקובץ בשם request.json. כדי ליצור או להחליף את הקובץ הזה בספרייה הנוכחית, מריצים את הפקודה הבאה בטרמינל:

cat > request.json << 'EOF'
{
  "publisher_model_name": "MODEL_ID",
  "deploy_config": {
    "dedicated_resources": {
      "machine_spec": {
        "machine_type": "MACHINE_TYPE",
        "accelerator_type": "ACCELERATOR_TYPE",
        "accelerator_count": ACCELERATOR_COUNT,
        "reservation_affinity": {
          "reservation_affinity_type": "ANY_RESERVATION"
        }
      },
      "spot": "false"
    }
  },
  "model_config": {
    "accept_eula": "true",
    "container_spec": {
      "image_uri": "IMAGE_URI",
      "args": [CONTAINER_ARGS ],
      "ports": [
        {
          "container_port": CONTAINER_PORT
        }
      ]
    }
  },
  "deploy_config": {
    "fast_tryout_enabled": false
  },
}
EOF

לאחר מכן מבצעים את הפקודה הבאה כדי לשלוח את בקשת ה-REST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:deploy"

PowerShell

שומרים את גוף הבקשה בקובץ בשם request.json. כדי ליצור או להחליף את הקובץ הזה בספרייה הנוכחית, מריצים את הפקודה הבאה בטרמינל:

@'
{
  "publisher_model_name": "MODEL_ID",
  "deploy_config": {
    "dedicated_resources": {
      "machine_spec": {
        "machine_type": "MACHINE_TYPE",
        "accelerator_type": "ACCELERATOR_TYPE",
        "accelerator_count": ACCELERATOR_COUNT,
        "reservation_affinity": {
          "reservation_affinity_type": "ANY_RESERVATION"
        }
      },
      "spot": "false"
    }
  },
  "model_config": {
    "accept_eula": "true",
    "container_spec": {
      "image_uri": "IMAGE_URI",
      "args": [CONTAINER_ARGS ],
      "ports": [
        {
          "container_port": CONTAINER_PORT
        }
      ]
    }
  },
  "deploy_config": {
    "fast_tryout_enabled": false
  },
}
'@  | Out-File -FilePath request.json -Encoding utf8

לאחר מכן מבצעים את הפקודה הבאה כדי לשלוח את בקשת ה-REST:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:deploy" | Select-Object -Expand Content

מקבלים תגובת JSON שדומה לזו.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.DeployOperationMetadata",
    "genericMetadata": {
      "createTime": "2025-03-13T21:44:44.538780Z",
      "updateTime": "2025-03-13T21:44:44.538780Z"
    },
    "publisherModel": "publishers/google/models/gemma3@gemma-3-1b-it",
    "destination": "projects/PROJECT_ID/locations/LOCATION",
    "projectNumber": "PROJECT_ID"
  }
}

gcloud

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

  1. מריצים את הפקודה gcloud ai model-garden models list כדי לראות את רשימת המודלים שאפשר לפרוס. הפקודה הזו מציגה רשימה של כל מזהי המודלים, ומציינת אילו מודלים אפשר לפרוס באופן עצמאי.

    gcloud ai model-garden models list
    

    בפלט, מאתרים את מזהה המודל לפריסה. בדוגמה הבאה מוצג פלט מקוצר.

    MODEL_ID                                      CAN_DEPLOY  CAN_PREDICT
    google/gemma2@gemma-2-27b                     Yes         No
    google/gemma2@gemma-2-27b-it                  Yes         No
    google/gemma2@gemma-2-2b                      Yes         No
    google/gemma2@gemma-2-2b-it                   Yes         No
    google/gemma2@gemma-2-9b                      Yes         No
    google/gemma2@gemma-2-9b-it                   Yes         No
    google/gemma3@gemma-3-12b-it                  Yes         No
    google/gemma3@gemma-3-12b-pt                  Yes         No
    google/gemma3@gemma-3-1b-it                   Yes         No
    google/gemma3@gemma-3-1b-pt                   Yes         No
    google/gemma3@gemma-3-27b-it                  Yes         No
    google/gemma3@gemma-3-27b-pt                  Yes         No
    google/gemma3@gemma-3-4b-it                   Yes         No
    google/gemma3@gemma-3-4b-pt                   Yes         No
    google/gemma3n@gemma-3n-e2b                   Yes         No
    google/gemma3n@gemma-3n-e2b-it                Yes         No
    google/gemma3n@gemma-3n-e4b                   Yes         No
    google/gemma3n@gemma-3n-e4b-it                Yes         No
    google/gemma@gemma-1.1-2b-it                  Yes         No
    google/gemma@gemma-1.1-2b-it-gg-hf            Yes         No
    google/gemma@gemma-1.1-7b-it                  Yes         No
    google/gemma@gemma-1.1-7b-it-gg-hf            Yes         No
    google/gemma@gemma-2b                         Yes         No
    google/gemma@gemma-2b-gg-hf                   Yes         No
    google/gemma@gemma-2b-it                      Yes         No
    google/gemma@gemma-2b-it-gg-hf                Yes         No
    google/gemma@gemma-7b                         Yes         No
    google/gemma@gemma-7b-gg-hf                   Yes         No
    google/gemma@gemma-7b-it                      Yes         No
    google/gemma@gemma-7b-it-gg-hf                Yes         No
    

    הפלט לא כולל מודלים שעברו כוונון או מודלים של Hugging Face. כדי לראות אילו מודלים של Hugging Face נתמכים, מוסיפים את הדגל --can-deploy-hugging-face-models.

  2. כדי לראות את מפרטי הפריסה של מודל, מריצים את הפקודה gcloud ai model-garden models list-deployment-config. אפשר לראות את סוג המכונה, סוג המאיץ ו-URI של קובץ אימג' של קונטיינר ש-Model Garden תומך בהם עבור מודל מסוים.

    gcloud ai model-garden models list-deployment-config \
        --model=MODEL_ID
    

    מחליפים את MODEL_ID במזהה המודל מהפקודה הקודמת של רשימת המודלים, כמו google/gemma@gemma-2b או stabilityai/stable-diffusion-xl-base-1.0.

  3. כדי לפרוס מודל לנקודת קצה, מריצים את הפקודה gcloud ai model-garden models deploy. ‫Model Garden יוצר שם מוצג לנקודת הקצה ומשתמש בהגדרת הפריסה שמוגדרת כברירת מחדל, אלא אם מציינים ארגומנטים וערכים נוספים.

    כדי להריץ את הפקודה באופן אסינכרוני, כוללים את הדגל --asynchronous.

    gcloud ai model-garden models deploy \
        --model=MODEL_ID \
        [--machine-type=MACHINE_TYPE] \
        [--accelerator-type=ACCELERATOR_TYPE] \
        [--endpoint-display-name=ENDPOINT_NAME] \
        [--hugging-face-access-token=HF_ACCESS_TOKEN] \
        [--reservation-affinity reservation-affinity-type=any-reservation] \
        [--reservation-affinity reservation-affinity-type=specific-reservation, key="compute.googleapis.com/reservation-name", values=RESERVATION_RESOURCE_NAME] \
        [--asynchronous]
    

    מחליפים את ה-placeholders הבאים:

    • MODEL_ID: מזהה המודל מפקודת הרשימה הקודמת. במקרה של מודלים של Hugging Face, צריך להשתמש בפורמט של כתובת ה-URL של המודל של Hugging Face, כמו stabilityai/stable-diffusion-xl-base-1.0.
    • MACHINE_TYPE: הגדרת קבוצת המשאבים לפריסה של המודל, כמו g2-standard-4.
    • ACCELERATOR_TYPE: מציינים מאיצים להוספה לפריסה כדי לשפר את הביצועים כשעובדים עם עומסי עבודה אינטנסיביים, כמו NVIDIA_L4.
    • ENDPOINT_NAME: שם לנקודת הקצה של Gemini Enterprise Agent Platform שהופעלה.
    • HF_ACCESS_TOKEN: במודלים של Hugging Face, אם המודל מוגבל, צריך לספק אסימון גישה.
    • RESERVATION_RESOURCE_NAME: כדי להשתמש ב מקום שמור ספציפי ב-Compute Engine, מציינים את שם המקום השמור. אם מציינים הזמנה ספציפית, אי אפשר לציין את any-reservation.

    הפלט כולל את הגדרות הפריסה שבהן נעשה שימוש ב-Model Garden, את מזהה נקודת הקצה ואת מזהה פעולת הפריסה, שבהם אפשר להשתמש כדי לבדוק את סטטוס הפריסה.

    Using the default deployment configuration:
     Machine type: g2-standard-12
     Accelerator type: NVIDIA_L4
     Accelerator count: 1
    
    The project has enough quota. The current usage of quota for accelerator type NVIDIA_L4 in region us-central1 is 0 out of 28.
    
    Deploying the model to the endpoint. To check the deployment status, you can try one of the following methods:
    1) Look for endpoint `ENDPOINT_DISPLAY_NAME` at the [Agent Platform] -> [Online prediction] tab in Cloud Console
    2) Use `gcloud ai operations describe OPERATION_ID --region=LOCATION` to find the status of the deployment long-running operation
    
  4. כדי לראות פרטים על הפריסה, מריצים את הפקודה gcloud ai endpoints list --list-model-garden-endpoints-only:

    gcloud ai endpoints list --list-model-garden-endpoints-only \
        --region=LOCATION_ID
    

    מחליפים את LOCATION_ID באזור שבו פרסתם את המודל.

    הפלט כולל את כל נקודות הקצה שנוצרו מ-Model Garden, וכולל מידע כמו מזהה נקודת הקצה, שם נקודת הקצה והאם נקודת הקצה משויכת למודל שנפרס. כדי למצוא את הפריסה, מחפשים את שם נקודת הקצה שהוחזר מהפקודה הקודמת.

Terraform

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

פריסת מודל

בדוגמה הבאה, מודל gemma-3-1b-it נפרס לנקודת קצה חדשה של Agent Platform ב-us-central1 באמצעות הגדרות ברירת מחדל.

terraform {
  required_providers {
    google = {
      source = "hashicorp/google"
      version = "6.45.0"
    }
  }
}

provider "google" {
  region  = "us-central1"
}

resource "google_vertex_ai_endpoint_with_model_garden_deployment" "gemma_deployment" {
  publisher_model_name = "publishers/google/models/gemma3@gemma-3-1b-it"
  location = "us-central1"
  model_config {
    accept_eula = True
  }
}

כדי לפרוס מודל עם התאמה אישית, אפשר לעיין בפרטים במאמר Agent Platform Endpoint with Model Garden Deployment.

החלת ההגדרה

terraform init
terraform plan
terraform apply

אחרי שמחילים את ההגדרות, Terraform מקצה נקודת קצה חדשה של Agent Platform ומפריסה את המודל הפתוח שצוין.

מחיקה

כדי למחוק את נקודת הקצה ואת פריסת המודל, מריצים את הפקודה הבאה:

terraform destroy

פריסת מודל של שותף ושליחת בקשות לחיזוי

במסוף Google Cloud , נכנסים לדף Model Garden ומשתמשים במסנן Model collections כדי לראות את Self-deploy partner models. בוחרים מודל מתוך רשימת המודלים של שותפים שניתן להטמיע באופן עצמאי, ורוכשים את המודל בלחיצה על הפעלה.

צריך לבצע פריסה בסוגי המכונות הנדרשים של השותף, כפי שמתואר בקטע 'הגדרת חומרה מומלצת' בכרטיס המודל ב-Model Garden. כשפורסים את המודל, משאבי ההצגה של המודל ממוקמים בפרויקט מאובטח שמנוהל על ידי Google.

המסוף

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

    כניסה ל-Model Garden

  2. כדי למצוא מודל ספציפי, מזינים את השם שלו בתיבת החיפוש של Model Garden.

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

  4. לוחצים על שם המודל שרוצים לפרוס כדי לפתוח את כרטיס המודל שלו.

  5. לוחצים על אפשרויות פריסה.

  6. בחלונית Deploy on Agent Platform, מגדירים את הפריסה, למשל את המיקום ואת סוג המכונה.

  7. לוחצים על פריסה.

אחרי שהפריסה מסתיימת, אפשר לבקש תחזיות באמצעות ה-SDK או ה-API. הוראות נוספות זמינות בקטע 'תיעוד' בכרטיס המודל.

Python

במאמר התקנת Vertex AI SDK ל-Python מוסבר איך להתקין או לעדכן את Vertex AI SDK ל-Python. מידע נוסף מופיע ב מאמרי העזרה של Python API.

פריסת מודל בלחיצה אחת

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

  1. כדי לראות את מפרטי הפריסה של מודל, משתמשים במזהה המודל מהשלב הקודם. אפשר לראות את סוג המכונה, סוג המאיץ ואת ה-URI של קובץ אימג' של קונטיינר שאומתו על ידי Model Garden עבור מודל מסוים.

    import vertexai
    from vertexai import model_garden
    
    vertexai.init(project=PROJECT_ID, location="us-central1")
    
    model = model_garden.PartnerModel(model)
    deploy_options = model.list_deploy_options()
    print(deploy_options)
    
  2. פריסת מודל באמצעות פריסה בקליק.

    from vertexai import model_garden
    
    # Deploy model
    model = model_garden.PartnerModel(f"{PUBLISHER}/{MODEL}@{VERSION}")
    
    endpoint = model.deploy(
        machine_type=MACHINE_TYPE,
        accelerator_type=ACCELERATOR_TYPE,
        accelerator_count=ACCELERATOR_COUNT,
        min_replica_count=1,
        max_replica_count=1,
    )
    

פריסה רב-שלבית

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

בקוד, מחליפים את ה-placeholder הבאים:

  • LOCATION: האזור שבו אתם מתכננים לפרוס את המודל ואת נקודת הקצה.
  • PROJECT_ID: מזהה הפרויקט.
  • DISPLAY_NAME: שם תיאורי של המשאב המשויך.
  • PUBLISHER_NAME: השם של השותף שמספק את המודל להעלאה או לפריסה.
  • PUBLISHER_MODEL_NAME: השם של המודל להעלאה.
  • MACHINE_TYPE: הגדרת קבוצת המשאבים לפריסה של המודל, כמו g2-standard-4. ההגדרות שלכם צריכות להיות זהות לאחת מההגדרות שהשותף מספק.
  • ACCELERATOR_TYPE: מציין מאיצים להוספה לפריסה כדי לשפר את הביצועים כשעובדים עם עומסי עבודה אינטנסיביים, כמו NVIDIA_L4. ההגדרות שלכם צריכות להיות זהות לאחת מההגדרות שהשותף מספק.
  • ACCELERATOR_COUNT: מספר המאיצים לשימוש. אתם צריכים להתאים לאחת מההגדרות שהשותף מספק.
  • REQUEST_PAYLOAD: השדות והערכים שרוצים לכלול בבקשת החיזוי. כדי לראות את השדות הזמינים, אפשר לעיין בכרטיס המודל של השותף ב-Model Garden.
from google.cloud import aiplatform

aiplatform.init(project=PROJECT_ID, location=LOCATION)

# Upload a model
model = aiplatform.Model.upload(
    display_name="DISPLAY_NAME_MODEL",
    model_garden_source_model_name = f"publishers/PUBLISHER_NAME/models/PUBLISHER_MODEL_NAME",
)

# Create endpoint
my_endpoint = aiplatform.Endpoint.create(display_name="DISPLAY_NAME_ENDPOINT")

# Deploy model
MACHINE_TYPE = "MACHINE_TYPE"  # @param {type: "string"}
ACCELERATOR_TYPE = "ACCELERATOR_TYPE" # @param {type: "string"}
ACCELERATOR_COUNT = ACCELERATOR_COUNT # @param {type: "number"}

model.deploy(
    endpoint=my_endpoint,
    deployed_model_display_name="DISPLAY_NAME_DEPLOYED_MODEL",
    traffic_split={"0": 100},
    machine_type=MACHINE_TYPE,
    accelerator_type=ACCELERATOR_TYPE,
    accelerator_count=ACCELERATOR_COUNT,
    min_replica_count=1,
    max_replica_count=1,
)

# Unary call for predictions
PAYLOAD = {
    REQUEST_PAYLOAD
}

request = json.dumps(PAYLOAD)

response = my_endpoint.raw_predict(
    body = request,
    headers = {'Content-Type':'application/json'}
)

print(response)

# Streaming call for predictions
PAYLOAD = {
    REQUEST_PAYLOAD
}

request = json.dumps(PAYLOAD)

for stream_response in my_endpoint.stream_raw_predict(
    body = request,
    headers = {'Content-Type':'application/json'}
):
    print(stream_response)

REST

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

בפקודות ה-curl לדוגמה, מחליפים את ערכי ה-placeholder הבאים:

  • LOCATION: האזור שבו אתם מתכננים לפרוס את המודל ואת נקודת הקצה.
  • PROJECT_ID: מזהה הפרויקט.
  • DISPLAY_NAME: שם תיאורי של המשאב המשויך.
  • PUBLISHER_NAME: השם של השותף שמספק את המודל להעלאה או לפריסה.
  • PUBLISHER_MODEL_NAME: השם של המודל להעלאה.
  • ENDPOINT_ID: המזהה של נקודת הקצה.
  • MACHINE_TYPE: הגדרת קבוצת המשאבים לפריסה של המודל, כמו g2-standard-4. ההגדרות שלכם צריכות להיות זהות לאחת מההגדרות שהשותף מספק.
  • ACCELERATOR_TYPE: מציין מאיצים להוספה לפריסה כדי לשפר את הביצועים כשעובדים עם עומסי עבודה אינטנסיביים, כמו NVIDIA_L4. ההגדרות שלכם צריכות להיות זהות לאחת מההגדרות שהשותף מספק.
  • ACCELERATOR_COUNT: מספר המאיצים לשימוש. אתם צריכים להתאים לאחת מההגדרות שהשותף מספק.
  • REQUEST_PAYLOAD: השדות והערכים שרוצים לכלול בבקשת החיזוי. כדי לראות את השדות הזמינים, אפשר לעיין בכרטיס המודל של השותף ב-Model Garden.
  1. מעלים מודל כדי להוסיף אותו למרשם המודלים.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/models:upload \
    -d '{
    "model": {
      "displayName": "DISPLAY_NAME_MODEL",
      "baseModelSource": {
        "modelGardenSource": {
          "publicModelName": f"publishers/PUBLISHER_NAME/models/PUBLISHER_MODEL_NAME",
        }
      }
    }
    }'
    
  2. יוצרים נקודת קצה.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/endpoints \
    -d '{
    "displayName": "DISPLAY_NAME_ENDPOINT"
    }'
    
  3. פורסים את המודל שהועלה לנקודת הקצה.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/endpoints/ENDPOINT_ID:deployModel \
    -d '{
    "deployedModel": {
      "model": f"projects/PROJECT_ID/locations/LOCATION/models/MODEL_ID",
      "displayName": "DISPLAY_NAME_DEPLOYED_MODEL",
      "dedicatedResources": {
       "machineSpec": {
          "machineType": "MACHINE_TYPE",
          "acceleratorType": "ACCELERATOR_TYPE",
          "acceleratorCount":"ACCELERATOR_COUNT",
       },
       "minReplicaCount": 1,
       "maxReplicaCount": 1
      },
    },
    "trafficSplit": {
      "0": 100
    }
    }'
    
  4. אחרי פריסת המודל, אפשר לבצע קריאה יחידה או קריאה לסטרימינג כדי לקבל תחזיות. כדי לראות אילו שיטות API נתמכות, אפשר לעיין בכרטיס המודל של השותף ב-Model Garden.

    • דוגמה לשיחה אוניטרית:
    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/endpoints/ENDPOINT_ID:rawPredict \
    -d 'REQUEST_PAYLOAD'
    
    • דוגמה לשיחה בהזרמה:
    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/endpoints/ENDPOINT_ID:streamRawPredict \
    -d 'REQUEST_PAYLOAD'
    

פריסת מודל לנקודת קצה פרטית

אתם יכולים לפרוס מודלים מ-Model Garden לנקודת קצה (endpoint) מסוג Private Service Connect ‏(PSC) כדי ליצור חיבור מאובטח ופרטי למודל. אפשר גם לשלב את ההגדרה הזו עם מאזן עומסים אזורי פנימי וחיצוני של אפליקציות (ALB) כשפורסים אותה עם קבוצה של נקודות קצה (endpoint) ברשת PSC. כדי להגדיר נקודת קצה (endpoint) מסוג PSC למודל ולוודא שיש קישוריות פרטית, פועלים לפי השלבים הבאים.

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

    כניסה ל-Model Garden

  2. מוצאים מודל לפריסה ולוחצים על כרטיס המודל שלו.

  3. לוחצים על פריסת המודל. בחלונית Deploy model, הגדרות הפריסה המוגדרות מראש מבוססות על נקודת קצה ייעודית ציבורית.

  4. לוחצים על עריכת ההגדרה כדי להפעיל אפשרויות פריסה נוספות, כולל גישה פרטית.

  5. קובעים את הגדרות הפריסה.

    • בוחרים מיקום שבו רוצים ליצור את נקודת הקצה של המודל.
    • מאשרים או משנים את שם המודל ונקודת הקצה שנוצרו.
    • בחירת סוג מכונה לפריסה היא אופציונלית, כי ההגדרה המומלצת כבר נבחרה בשבילכם.
    • בשדה סוג ההזמנה, בוחרים סוג הזמנה. ההזמנה צריכה להתאים למפרט המכונה שציינתם.
      • שימוש אוטומטי בהזמנה שנוצרה: Gemini Enterprise Agent Platform בוחר הזמנה זמינה עם מאפיינים תואמים. אם אין קיבולת זמינה בהזמנה שנבחרה, Gemini Enterprise Agent Platform משתמש במאגר הכללי של משאבי Google Cloud.
      • בחירת הזמנות ספציפיות: Gemini Enterprise Agent Platform משתמש בהזמנה ספציפית. אם אין קיבולת זמינה בהזמנה שבחרתם, הפריסה תיכשל.
      • ללא הקצאה (ברירת מחדל): פלטפורמת הסוכנים של Gemini Enterprise משתמשת במאגר הכללי של משאבי Google Cloud.
    • מגדירים את מדיניות הזמינות.
      • רגיל: מתאים לרוב עומסי העבודה.
      • Spot: מתאים לעומסי עבודה (workloads) עמידים בכשלים.
      • Flex Start: משתמש ב-Dynamic Workload Scheduling (תזמון דינמי של עומסי עבודה, DWS) כדי לנהל ולתעדף בקשות להקצאת משאבים
  6. הגדרת גישה לנקודת קצה לרשת פרטית.

    • בוחרים באפשרות פרטי (Private Service Connect).
    • בוחרים באפשרות Project IDs (מזהי פרויקטים). כדי להעניק גישה לפרויקטים אחרים, צריך להזין כאן את מזהי הפרויקטים. אם משאירים את השדה הזה ריק, אפשר לגשת לנקודת הקצה רק מתוך הפרויקט הנוכחי.
  7. לוחצים על פריסה.

  8. כדי לראות את הפריסה, עוברים לדף Model Garden ובוחרים באפשרות View my endpoints and models (הצגת נקודות הקצה והמודלים שלי). הפריסה תופיע בקטע My Endpoints (נקודות הקצה שלי). כדי לוודא שהנקודה תהיה גלויה, חשוב לבחור את האזור הנכון. בוחרים את נקודת הקצה. הסטטוס יהיה Deploying (פריסה) וישתנה ל-Ready (מוכן) כשהפריסה תושלם.

  9. מקבלים את מזהה נקודת הקצה, פותחים את Cloud Shell ומבצעים את הפעולות הבאות כדי לקבל את ה-URI של Private Service Attachment:

    gcloud ai endpoints describe ENDPOINT_ID --region=REGION  | grep -i serviceAttachment:
    

    לדוגמה:

    user@cloudshell:$ gcloud ai endpoints describe 2124795225560842240 --region=europe-west4 | grep -i serviceAttachment:
    Using endpoint [https://europe-west4-aiplatform.googleapis.com/]
        serviceAttachment: projects/o9457b320a852208e-tp/regions/europe-west4/serviceAttachments/gkedpm-52065579567eaf39bfe24f25f7981d
    

אחרי שמקבלים את קובץ השירות, יש את האפשרויות הבאות לגישה למודל:

  • פורסים נקודת קצה של PSC באותו VPC כמו הפרויקט שקיבל הרשאה. הגישה הזו מאפשרת להגיע לכתובות IP ברשתות היברידיות ובאותו VPC. חשוב לציין שלא ניתן להגיע לנקודות קצה של PSC דרך שיוך VPC.
  • אפשר לפרוס קבוצה של נקודות קצה ברשת (NEG) מסוג Private Service Connect ‏ (PSC) באותו VPC כמו הפרויקט המורשה. כך אפשר לחשוף את המודל דרך מאזן עומסים פנימי או חיצוני, שמספק כמה יתרונות:
    • גישה באמצעות קישור בין רשתות שכנות (peering) של VPC: אפשר לגשת למאזן העומסים מרשתות VPC שכנות.
    • תכונות אבטחה: תקבלו תמיכה ב-Cloud Armor וב-Model Armor שיעזרו לכם להגן על נקודת הקצה.
    • ניהול תעבורת נתונים: מאפשר ניתוב מתקדם של תעבורת נתונים, כמו שכתוב של מארח ונתיב.
    • גישה מרכזית: אפשר להשתמש במאזן עומסים אחד של אפליקציות (ALB) כדי להפנות תנועה למודל באמצעות כללי נתיב.

הצגה או ניהול של נקודת קצה

כדי לראות ולנהל את נקודת הקצה, עוברים לדף Online prediction ב-Agent Platform.

מעבר לתחזית אונליין

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

ביטול הפריסה של מודלים ומחיקת משאבים

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

ביטול הפריסה של מודלים

ביטול הפריסה של מודל מנקודת הקצה שלו.

המסוף

  1. במסוף Google Cloud , עוברים לכרטיסייה Endpoints בדף Online prediction.

    לדף Endpoints

  2. בתפריט הנפתח Region, בוחרים את האזור שבו נמצאת נקודת הקצה.

  3. לוחצים על שם נקודת הקצה כדי לפתוח את דף הפרטים.

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

  5. בתיבת הדו-שיח Undeploy model from endpoint (ביטול הפריסה של המודל מנקודת הקצה), לוחצים על Undeploy (ביטול הפריסה).

Python

במאמר התקנת Vertex AI SDK ל-Python מוסבר איך להתקין או לעדכן את Vertex AI SDK ל-Python. מידע נוסף מופיע ב מאמרי העזרה של Python API.

בקוד, מחליפים את:

  • PROJECT_ID במזהה הפרויקט
  • LOCATION עם האזור שלכם, לדוגמה, us-central1
  • ENDPOINT_ID עם מזהה נקודת הקצה
from google.cloud import aiplatform

aiplatform.init(project=PROJECT_ID, location=LOCATION)

# To find out which endpoints are available, un-comment the line below:
# endpoints = aiplatform.Endpoint.list()

endpoint = aiplatform.Endpoint(ENDPOINT_ID)
endpoint.undeploy_all()

gcloud

בפקודות האלה, מחליפים את:

  • PROJECT_ID בשם הפרויקט
  • LOCATION_ID עם האזור שבו פרסתם את המודל ואת נקודת הקצה
  • ENDPOINT_ID עם מזהה נקודת הקצה
  • MODEL_ID עם מזהה המודל מהפקודה של רשימת המודלים
  • DEPLOYED_MODEL_ID עם מזהה המודל שנפרס
  1. מריצים את הפקודה gcloud ai endpoints list כדי למצוא את מזהה נקודת הקצה שמשויך לפריסה.

    gcloud ai endpoints list \
        --project=PROJECT_ID \
        --region=LOCATION_ID
    
  2. מריצים את הפקודה gcloud ai models list כדי למצוא את מזהה המודל.

    gcloud ai models list \
        --project=PROJECT_ID \
        --region=LOCATION_ID
    
  3. משתמשים במזהה המודל מהפקודה הקודמת כדי לקבל את מזהה המודל שנפרס. לשם כך מריצים את הפקודה gcloud ai models describe.

    gcloud ai models describe MODEL_ID \
        --project=PROJECT_ID \
        --region=LOCATION_ID
    

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

    Using endpoint [https://us-central1-aiplatform.googleapis.com/]
    artifactUri: [URI removed]
    baseModelSource:
      modelGardenSource:
        publicModelName: publishers/google/models/gemma2
    ...
    deployedModels:
    -   deployedModelId: '1234567891234567891'
      endpoint: projects/12345678912/locations/us-central1/endpoints/12345678912345
    displayName: gemma2-2b-it-12345678912345
    etag: [ETag removed]
    modelSourceInfo:
      sourceType: MODEL_GARDEN
    name: projects/123456789123/locations/us-central1/models/gemma2-2b-it-12345678912345
    ...
    
  4. מריצים את הפקודה gcloud ai endpoints undeploy-model כדי לבטל את הפריסה של המודל מנקודת הקצה. לשם כך משתמשים במזהה נקודת הקצה ובמזהה המודל שנפרס מהפקודות הקודמות.

    gcloud ai endpoints undeploy-model ENDPOINT_ID \
        --project=PROJECT_ID \
        --region=LOCATION_ID \
        --deployed-model-id=DEPLOYED_MODEL_ID
    

    הפקודה הזו לא יוצרת פלט.

מחיקת נקודות קצה

מוחקים את נקודת הקצה של Gemini Enterprise Agent Platform ששויכה לפריסת המודל.

המסוף

  1. במסוף Google Cloud , עוברים לכרטיסייה Endpoints בדף Online prediction.

    לדף Endpoints

  2. בתפריט הנפתח Region, בוחרים את האזור שבו נמצאת נקודת הקצה.

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

  4. בהודעת האישור, לוחצים על אישור.

Python

במאמר התקנת Vertex AI SDK ל-Python מוסבר איך להתקין או לעדכן את Vertex AI SDK ל-Python. מידע נוסף מופיע ב מאמרי העזרה של Python API.

בקוד, מחליפים את:

  • PROJECT_ID במזהה הפרויקט
  • LOCATION עם האזור שלכם, לדוגמה, us-central1
  • ENDPOINT_ID עם מזהה נקודת הקצה
from google.cloud import aiplatform

aiplatform.init(project=PROJECT_ID, location=LOCATION)

# To find out which endpoints are available, un-comment the line below:
# endpoints = aiplatform.Endpoint.list()

endpoint = aiplatform.Endpoint(ENDPOINT_ID)
endpoint.delete()

gcloud

בפקודות האלה, מחליפים את:

  • PROJECT_ID בשם הפרויקט
  • LOCATION_ID עם האזור שבו פרסתם את המודל ואת נקודת הקצה
  • ENDPOINT_ID עם מזהה נקודת הקצה
  1. כדי לקבל את מזהה נקודת הקצה למחיקה, מריצים את הפקודה gcloud ai endpoints list. הפקודה הזו מציגה רשימה של מזהי נקודות הקצה של כל נקודות הקצה בפרויקט.

    gcloud ai endpoints list \
        --project=PROJECT_ID \
        --region=LOCATION_ID
    
  2. מריצים את הפקודה gcloud ai endpoints delete כדי למחוק את נקודת הקצה.

    gcloud ai endpoints delete ENDPOINT_ID \
        --project=PROJECT_ID \
        --region=LOCATION_ID
    

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

מחיקת מודלים

מוחקים את משאב המודל ששויך לפריסת המודל.

המסוף

  1. עוברים לדף Model Registry מהקטע Agent Platform במסוף Google Cloud .

    כניסה לדף Model Registry

  2. בתפריט הנפתח Region, בוחרים את האזור שבו פרסתם את המודל.

  3. בשורה של המודל, לוחצים על פעולות ואז בוחרים באפשרות מחיקת המודל.

    כשמוחקים את המודל, כל הגרסאות וההערכות המשויכות שלו נמחקות מהפרויקט Google Cloud .

  4. בהודעת האישור, לוחצים על מחיקה.

Python

במאמר התקנת Vertex AI SDK ל-Python מוסבר איך להתקין או לעדכן את Vertex AI SDK ל-Python. מידע נוסף מופיע ב מאמרי העזרה של Python API.

בקוד, מחליפים את:

  • PROJECT_ID במזהה הפרויקט
  • LOCATION עם האזור שלכם, לדוגמה, us-central1
  • MODEL_ID עם מזהה המודל
from google.cloud import aiplatform

aiplatform.init(project=PROJECT_ID, location=LOCATION)

# To find out which models are available in Model Registry, un-comment the line below:
# models = aiplatform.Model.list()

model = aiplatform.Model(MODEL_ID)
model.delete()

gcloud

בפקודות האלה, מחליפים את:

  • PROJECT_ID בשם הפרויקט
  • LOCATION_ID עם האזור שבו פרסתם את המודל ואת נקודת הקצה
  • MODEL_ID עם מזהה המודל מהפקודה של רשימת המודלים
  1. כדי למצוא את מזהה המודל שרוצים למחוק, מריצים את הפקודה gcloud ai models list.

    gcloud ai models list \
        --project=PROJECT_ID \
        --region=LOCATION_ID
    
  2. מריצים את הפקודה gcloud ai models delete כדי למחוק את המודל. צריך לציין את מזהה המודל ואת המיקום שלו.

    gcloud ai models delete MODEL_ID \
        --project=PROJECT_ID \
        --region=LOCATION_ID
    

הצגת דוגמאות קוד

רוב כרטיסי המודלים של מודלים לפתרונות ספציפיים למשימות מכילים דוגמאות קוד שאפשר להעתיק ולבדוק.

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

    כניסה ל-Model Garden

  2. מוצאים מודל נתמך שרוצים לראות דוגמאות קוד שלו ולוחצים על הכרטיסייה Documentation (תיעוד).

  3. הדף יגולל לקטע התיעוד עם קוד לדוגמה שמוטמע במקום.

יצירת אפליקציה לראייה ממוחשבת

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

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

    כניסה ל-Model Garden

  2. בקטע 'פתרונות ספציפיים למשימות', מוצאים מודל ראייה שרוצים להשתמש בו כדי ליצור אפליקציית ראייה ולוחצים על הצגת פרטים.

  3. לוחצים על Build app (בניית אפליקציה).

    תועברו אל Vertex AI Vision.

  4. בקטע שם האפליקציה, מזינים שם לאפליקציה ולוחצים על המשך.

  5. בוחרים תוכנית חיוב ולוחצים על יצירה.

    תועברו אל Vertex AI Vision Studio, שם תוכלו להמשיך ליצור את אפליקציית הראייה הממוחשבת.