קבלת מידע קבוע על משאבים

בדף הזה מוסבר איך לקבל רשימה של משאבים קבועים ואיך לקבל מידע על משאב קבוע ספציפי באמצעות Google Cloud המסוף, Google Cloud CLI,‏ Vertex AI SDK ל-Python ו-API בארכיטקטורת REST.

התפקידים הנדרשים

כדי לקבל את ההרשאות שנדרשות לקבלת מידע על משאבים קבועים, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM‏ Vertex AI Viewer (‏roles/aiplatform.viewer) בפרויקט. להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

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

ההרשאות הנדרשות

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

  • aiplatform.persistentResources.get
  • aiplatform.persistentResources.list

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

קבלת רשימה של משאבים קבועים

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

המסוף

כדי לראות רשימה של משאבים קבועים במסוף Google Cloud , עוברים לדף Persistent resources.

כניסה לדף Persistent resources

gcloud

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

  • PROJECT_ID: מזהה הפרויקט של Google Cloud הפרויקט שרוצים לקבל רשימה של משאבים קבועים שלו.
  • LOCATION: האזור שבו רוצים ליצור את המשאב הקבוע. רשימה של האזורים הנתמכים מופיעה במאמר בנושא זמינות התכונות.

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

‫Linux,‏ macOS או Cloud Shell

gcloud ai persistent-resources list \
    --project=PROJECT_ID \
    --region=LOCATION

‏Windows (PowerShell)

gcloud ai persistent-resources list `
    --project=PROJECT_ID `
    --region=LOCATION

Windows‏ (cmd.exe)

gcloud ai persistent-resources list ^
    --project=PROJECT_ID ^
    --region=LOCATION

אמורים לקבל תגובה שדומה לזו:

תשובה

Using endpoint [https://us-central1-aiplatform.googleapis.com/]
---
createTime: '2023-09-12T20:45:33.220989Z'
displayName: test
name: projects/123456789012/locations/us-central1/persistentResources/test-persistent-resource
resourcePools:
- autoscalingSpec:
    maxReplicaCount: '4'
    minReplicaCount: '1'
  diskSpec:
    bootDiskSizeGb: 100
    bootDiskType: pd-standard
  id: n1-highmem-2-nvidia-tesla-t4-1
  machineSpec:
    acceleratorCount: 1
    acceleratorType: NVIDIA_TESLA_T4
    machineType: n1-highmem-2
  replicaCount: '1'
startTime: '2023-09-12T20:50:36.992739253Z'
state: RUNNING
updateTime: '2023-09-12T20:50:42.813723Z'
---
createTime: '2023-09-12T20:37:21.691977Z'
displayName: my-persistent-resource
name: projects/123456789012/locations/us-central1/persistentResources/my-persistent-resource
resourcePools:
- autoscalingSpec:
    maxReplicaCount: '12'
    minReplicaCount: '4'
  diskSpec:
    bootDiskSizeGb: 200
    bootDiskType: pd-standard
  id: n1-highmem-2-nvidia-tesla-t4-1
  machineSpec:
    acceleratorCount: 1
    acceleratorType: NVIDIA_TESLA_T4
    machineType: n1-highmem-2
  replicaCount: '4'
- diskSpec:
    bootDiskSizeGb: 100
    bootDiskType: pd-ssd
  id: n1-standard-4
  machineSpec:
    machineType: n1-standard-4
  replicaCount: '4'
startTime: '2023-09-12T20:42:46.495575169Z'
state: RUNNING
updateTime: '2023-09-12T20:42:51.519271Z'

Python

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה במאמר Vertex AI quickstart using client libraries. מידע נוסף מופיע במאמרי העזרה של Vertex AI Python API.

כדי לבצע אימות ב-Vertex AI, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

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

from google.cloud.aiplatform.preview import persistent_resource

# Optional arguments:
# filter (str): An expression for filtering the results of the request. For
#   field names both snake_case and camelCase are supported.
# order_by (str): A comma-separated list of fields to order by, sorted in
#   ascending order. Use "desc" after a field name for descending. Supported
#   fields: `display_name`, `create_time`, `update_time`

# List the persistent resource on the project.

resource_list = persistent_resource.PersistentResource.list()

for i in range(len(resource_list)):
    print(resource_list[i].name)
    print(resource_list[i].state)

REST

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

  • PROJECT_ID: מזהה הפרויקט של Google Cloud הפרויקט שרוצים לקבל רשימה של משאבים קבועים שלו.
  • LOCATION: האזור שבו רוצים ליצור את המשאב הקבוע. רשימה של האזורים הנתמכים מופיעה במאמר בנושא זמינות התכונות.

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

GET https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/persistentResources

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

אתם אמורים לקבל תגובת JSON שדומה לזו:

קבלת מידע על משאב קבוע

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

המסוף

כדי לראות מידע על משאב מתמשך במסוף Google Cloud :

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

    כניסה לדף Persistent resources

  2. לוחצים על השם של המשאב הקבוע שרוצים להציג.

gcloud

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

  • PROJECT_ID: מזהה הפרויקט של המשאב הקבוע שרוצים לקבל מידע לגביו.
  • LOCATION: האזור של המשאב הקבוע שרוצים לקבל מידע לגביו.
  • PERSISTENT_RESOURCE_ID: המזהה של המשאב הקבוע שרוצים לקבל מידע לגביו.

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

‫Linux,‏ macOS או Cloud Shell

gcloud ai persistent-resources describe PERSISTENT_RESOURCE_ID \
    --project=PROJECT_ID \
    --region=LOCATION

‏Windows (PowerShell)

gcloud ai persistent-resources describe PERSISTENT_RESOURCE_ID `
    --project=PROJECT_ID `
    --region=LOCATION

Windows‏ (cmd.exe)

gcloud ai persistent-resources describe PERSISTENT_RESOURCE_ID ^
    --project=PROJECT_ID ^
    --region=LOCATION

אמורים לקבל תגובה שדומה לזו:

תשובה

Using endpoint [https://us-central1-aiplatform.googleapis.com/]
createTime: '2023-07-06T18:47:42.098296Z'
displayName: Test-Persistent-Resource
name: projects/123456789012/locations/us-central1/persistentResources/my-persistent-resource
resourcePools:
- diskSpec:
    bootDiskSizeGb: 100
    bootDiskType: pd-ssd
  machineSpec:
    machineType: n1-highmem-4
  replicaCount: '4'
- diskSpec:
    bootDiskSizeGb: 100
    bootDiskType: pd-ssd
  machineSpec:
    acceleratorCount: 1
    acceleratorType: NVIDIA_TESLA_P4
    machineType: n1-standard-4
  replicaCount: '4'
  usedReplicaCOunt: '2'
startTime: '2023-07-06T18:51:53.209127117Z'
state: RUNNING
updateTime: '2023-07-06T18:52:01.545109Z'

Python

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה במאמר Vertex AI quickstart using client libraries. מידע נוסף מופיע במאמרי העזרה של Vertex AI Python API.

כדי לבצע אימות ב-Vertex AI, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

from google.cloud.aiplatform.preview import persistent_resource

resource_to_get = persistent_resource.PersistentResource(
    PERSISTENT_RESOURCE_ID
)

print(resource_to_get.display_name)
print(resource_to_get.state)
print(resource_to_get.start_time)

REST

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

  • PROJECT_ID: מזהה הפרויקט של המשאב הקבוע שרוצים לקבל מידע לגביו.
  • LOCATION: האזור של המשאב הקבוע שרוצים לקבל מידע לגביו.
  • PERSISTENT_RESOURCE_ID: המזהה של המשאב הקבוע שרוצים לקבל מידע לגביו.

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

GET https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/persistentResources/PERSISTENT_RESOURCE_ID

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

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "name": "projects/123456789012/locations/us-central1/persistentResources/test-persistent-resource",
  "displayName": "test",
  "resourcePools": [
    {
      "id": "n1-highmem-2-nvidia-tesla-t4-1",
      "machineSpec": {
        "machineType": "n1-highmem-2",
        "acceleratorType": "NVIDIA_TESLA_T4",
        "acceleratorCount": 1
      },
      "replicaCount": "1",
      "diskSpec": {
        "bootDiskType": "pd-standard",
        "bootDiskSizeGb": 100
      },
      "autoscalingSpec": {
        "minReplicaCount": "1",
        "maxReplicaCount": "4"
      }
    }
  ],
  "state": "RUNNING",
  "createTime": "2023-09-12T20:45:33.220989Z",
  "startTime": "2023-09-12T20:50:36.992739253Z",
  "updateTime": "2023-09-12T20:50:42.813723Z"
}

המאמרים הבאים