HEY के साथ Vertex AI की ऑनलाइन अनुमान लगाने के लिए बेसलाइन टेस्टिंग

1. परिचय

इस ट्यूटोरियल में, Cloud Monitoring की ऑनलाइन अनुमान लगाने की मेट्रिक बनाने और उनका आकलन करने का तरीका बताया गया है. इसमें, us-central1 और us-west1 में बेसलाइन टेस्टिंग करने का तरीका बताया गया है. साथ ही, HEY वेब परफ़ॉर्मेंस टूल का इस्तेमाल करके, us-central1 में डिप्लॉय किए गए अनुमान लगाने वाले एंडपॉइंट का तरीका बताया गया है.

आपको क्या बनाना है

आपको aiml-vpc नाम का एक वीपीसी नेटवर्क सेट अप करना होगा. इसमें us-west1 और us-central1 में सबनेट और इंस्टेंस शामिल होंगे. इनका इस्तेमाल, HEY का इस्तेमाल करके ट्रैफ़िक जनरेट करने के लिए किया जाएगा. यह us-central1 में डिप्लॉय किए गए ऑनलाइन अनुमान और मॉडल को टारगेट करेगा.

ट्यूटोरियल में Private Service Connect और Private DNS को भी शामिल किया गया है. इससे यह दिखाया जा सकता है कि ऑन-प्रिमाइसेस और मल्टी क्लाउड एनवायरमेंट, googleapis को ऐक्सेस करने के लिए पीएससी का फ़ायदा कैसे ले सकते हैं.

इस ट्यूटोरियल में, Cloud Monitoring और Network Intelligence का इस्तेमाल किया जाएगा. इससे यह पुष्टि की जा सकेगी कि HEY से Online Prediction पर जनरेट हुआ ट्रैफ़िक मान्य है. ट्यूटोरियल में बताए गए चरणों को वीपीसी में डिप्लॉय किया जाता है. हालांकि, इनका इस्तेमाल ऑन-प्रिमाइसेस या मल्टी क्लाउड एनवायरमेंट से Vertex API को डिप्लॉय करने और उसका बेसलाइन पाने के लिए किया जा सकता है. नेटवर्क आर्किटेक्चर में यहां दिए गए कॉम्पोनेंट शामिल होते हैं:

dd5c102ce1ab0150.png

इस्तेमाल के उदाहरण के बारे में यहां जानकारी दी गई है:

  1. HEY का इस्तेमाल करके, us-west1 में मौजूद GCE इंस्टेंस से us-central1 में ऑनलाइन अनुमान लगाने की सुविधा को ऐक्सेस करना
  2. पुष्टि करें कि Vertex API को ऐक्सेस करने के लिए पीएससी का इस्तेमाल किया जा रहा है
  3. HEY का इस्तेमाल करके पांच मिनट तक कर्ल करें
  4. Cloud Monitoring का इस्तेमाल करके, इंतज़ार के समय की पुष्टि करना
  5. Network Intelligence का इस्तेमाल करके, अलग-अलग रीजन के बीच होने वाली देरी की पुष्टि करना
  6. HEY का इस्तेमाल करके, us-central1 में मौजूद GCE इंस्टेंस से us-central1 में ऑनलाइन अनुमान लगाने की सुविधा को ऐक्सेस करना
  7. पुष्टि करें कि Vertex API को ऐक्सेस करने के लिए पीएससी का इस्तेमाल किया जा रहा है
  8. HEY का इस्तेमाल करके पांच मिनट तक कर्ल करें
  9. Cloud Monitoring का इस्तेमाल करके, इंतज़ार के समय की पुष्टि करना
  10. Network Intelligence का इस्तेमाल करके, एक ही इलाके में मौजूद सर्वर के बीच होने वाली देरी की पुष्टि करना

आपको क्या सीखने को मिलेगा

  • Private Service Connect एंडपॉइंट कैसे बनाया जाता है
  • HEY का इस्तेमाल करके, ऑनलाइन अनुमान लगाने की सुविधा के लिए लोड जनरेट करने का तरीका
  • Cloud Monitoring का इस्तेमाल करके, Vertex AI मेट्रिक बनाने का तरीका
  • नेटवर्क इंटेलिजेंस का इस्तेमाल करके, एक ही क्षेत्र और अलग-अलग क्षेत्रों के बीच होने वाली लेटेन्सी की पुष्टि कैसे करें

आपको इन चीज़ों की ज़रूरत होगी

  • Google Cloud प्रोजेक्ट

IAM अनुमतियां

Compute Network Admin

Compute Network Admin

सेवा डायरेक्ट्री एडिटर

डीएनएस एडमिन

नेटवर्क मैनेजमेंट व्यूअर

2. शुरू करने से पहले

ट्यूटोरियल के साथ काम करने के लिए प्रोजेक्ट को अपडेट करना

इस ट्यूटोरियल में, Cloud Shell में gcloud कॉन्फ़िगरेशन लागू करने में मदद के लिए, $variables का इस्तेमाल किया गया है.

Cloud Shell में, यह तरीका अपनाएं:

gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectid=YOUR-PROJECT-NAME
echo $projectid

3. aiml-vpc सेटअप

aiml-vpc बनाना

gcloud services enable networkmanagement.googleapis.com

Cloud Shell में, यह तरीका अपनाएं:

gcloud compute networks create aiml-vpc --project=$projectid --subnet-mode=custom

Cloud Shell में, Network Intelligence के लिए नेटवर्क मैनेजमेंट एपीआई चालू करें

gcloud services enable networkmanagement.googleapis.com

उपयोगकर्ता के मैनेज किए गए नोटबुक सबनेट बनाना

Cloud Shell में, workbench-subnet बनाएं.

gcloud compute networks subnets create workbench-subnet --project=$projectid --range=172.16.10.0/28 --network=aiml-vpc --region=us-central1 --enable-private-ip-google-access

Cloud Shell में, us-west1-subnet बनाएं.

gcloud compute networks subnets create us-west1-subnet --project=$projectid --range=192.168.10.0/28 --network=aiml-vpc --region=us-west1

Cloud Shell में, us-central1-subnet बनाएं.

gcloud compute networks subnets create us-central1-subnet --project=$projectid --range=192.168.20.0/28 --network=aiml-vpc --region=us-central1

क्लाउड राऊटर और एनएटी कॉन्फ़िगरेशन

इस ट्यूटोरियल में, सॉफ़्टवेयर पैकेज डाउनलोड करने के लिए Cloud NAT का इस्तेमाल किया गया है. ऐसा इसलिए, क्योंकि GCE इंस्टेंस के पास कोई बाहरी आईपी पता नहीं है. Cloud NAT, इग्रेस NAT की सुविधाएं देता है. इसका मतलब है कि इंटरनेट होस्ट को, उपयोगकर्ता के मैनेज किए गए नोटबुक से कम्यूनिकेशन शुरू करने की अनुमति नहीं है. इससे यह ज़्यादा सुरक्षित हो जाता है.

Cloud Shell में, us-west1 रीजनल क्लाउड राउटर बनाएं.

gcloud compute routers create cloud-router-us-west1-aiml-nat --network aiml-vpc --region us-west1

Cloud Shell में, us-west1 रीजनल क्लाउड नेट गेटवे बनाएं.

gcloud compute routers nats create cloud-nat-us-west1 --router=cloud-router-us-west1-aiml-nat --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region us-west1

Cloud Shell में, us-central1 रीजनल क्लाउड राउटर बनाएं.

gcloud compute routers create cloud-router-us-central1-aiml-nat --network aiml-vpc --region us-central1

Cloud Shell में, us-central1 रीजनल क्लाउड नेट गेटवे बनाएं.

gcloud compute routers nats create cloud-nat-us-central1 --router=cloud-router-us-central1-aiml-nat --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region us-central1

4. Private Service Connect एंडपॉइंट बनाना

इस सेक्शन में, आपको एक Private Service Connect (PSC) एंडपॉइंट बनाना होगा. इसका इस्तेमाल, aiml-vpc से Vertex API को ऐक्सेस करने के लिए किया जाएगा.

Cloud Shell से

gcloud compute addresses create psc-ip \
    --global \
    --purpose=PRIVATE_SERVICE_CONNECT \
    --addresses=100.100.10.10 \
    --network=aiml-vpc

यह कुकी, लैब की अवधि के लिए ‘pscendpointip' को सेव करती है

pscendpointip=$(gcloud compute addresses list --filter=name:psc-ip --format="value(address)")

echo $pscendpointip

पीएससी एंडपॉइंट बनाना

Cloud Shell से

gcloud compute forwarding-rules create pscvertex \
    --global \
    --network=aiml-vpc \
    --address=psc-ip \
    --target-google-apis-bundle=all-apis

कॉन्फ़िगर किए गए Private Service Connect एंडपॉइंट की सूची बनाएं

Cloud Shell से

gcloud compute forwarding-rules list  \
--filter target="(all-apis OR vpc-sc)" --global

कॉन्फ़िगर किए गए Private Service Connect एंडपॉइंट के बारे में जानकारी

Cloud Shell से

gcloud compute forwarding-rules describe \
    pscvertex --global

5. GCE इंस्टेंस के लिए सेवा खाता बनाना

Vertex API को बेहतर तरीके से कंट्रोल करने के लिए, उपयोगकर्ता के मैनेज किए गए सेवा खाते की ज़रूरत होती है. यह खाता, वेस्ट और सेंट्रल इंस्टेंस पर लागू होगा. जनरेट होने के बाद, सेवा खाते की अनुमतियों में कारोबार की ज़रूरतों के हिसाब से बदलाव किया जा सकता है. ट्यूटोरियल में, उपयोगकर्ता के मैनेज किए गए सेवा खाते, vertex-sa पर ये भूमिकाएं लागू होंगी:

आगे बढ़ने से पहले, आपको सेवा खाते के एपीआई को होगा.

Cloud Shell में, सेवा खाता बनाएं.

gcloud iam service-accounts create vertex-gce-sa \
    --description="service account for vertex" \
    --display-name="vertex-sa"

Cloud Shell में, सेवा खाते को compute instance admin की भूमिका के साथ अपडेट करें

gcloud projects add-iam-policy-binding $projectid --member="serviceAccount:vertex-gce-sa@$projectid.iam.gserviceaccount.com" --role="roles/compute.instanceAdmin.v1"

Cloud Shell में, सेवा खाते को Vertex AI उपयोगकर्ता की भूमिका के साथ अपडेट करें

gcloud projects add-iam-policy-binding $projectid --member="serviceAccount:vertex-gce-sa@$projectid.iam.gserviceaccount.com" --role="roles/aiplatform.user"

6. उपयोगकर्ता के मैनेज किए गए सेवा खाते (नोटबुक) को बनाना

इस सेक्शन में, आपको उपयोगकर्ता के मैनेज किए गए सेवा खाते को बनाना होगा. यह खाता, ट्यूटोरियल में इस्तेमाल किए गए Vertex Workbench (Notebook) से जुड़ा होगा.

ट्यूटोरियल में, सेवा खाते पर ये नियम लागू होंगे:

Cloud Shell में, सेवा खाता बनाएं.

gcloud iam service-accounts create user-managed-notebook-sa \
    --display-name="user-managed-notebook-sa"

Cloud Shell में, सेवा खाते को स्टोरेज एडमिन की भूमिका के साथ अपडेट करें.

gcloud projects add-iam-policy-binding $projectid --member="serviceAccount:user-managed-notebook-sa@$projectid.iam.gserviceaccount.com" --role="roles/storage.admin"

Cloud Shell में, सेवा खाते को Vertex AI उपयोगकर्ता की भूमिका के साथ अपडेट करें.

gcloud projects add-iam-policy-binding $projectid --member="serviceAccount:user-managed-notebook-sa@$projectid.iam.gserviceaccount.com" --role="roles/aiplatform.user"

Cloud Shell में, सेवा खाते को Artifact Registry एडमिन की भूमिका असाइन करें.

gcloud projects add-iam-policy-binding $projectid --member="serviceAccount:user-managed-notebook-sa@$projectid.iam.gserviceaccount.com" --role="roles/artifactregistry.admin"

Cloud Shell में, सेवा खाते की सूची बनाएं. साथ ही, उस ईमेल पते को नोट करें जिसका इस्तेमाल उपयोगकर्ता के मैनेज किए गए नोटबुक को बनाते समय किया जाएगा.

gcloud iam service-accounts list

7. टेस्ट के इंस्टेंस बनाना

यहां दिए गए सेक्शन में, us-west1 और us-central1 से बेसलाइन टेस्टिंग करने के लिए, टेस्ट इंस्टेंस बनाए जाएंगे.

Cloud Shell में west-client बनाएं.

gcloud compute instances create west-client \
    --zone=us-west1-a \
    --image-family=debian-11 \
    --image-project=debian-cloud \
    --subnet=us-west1-subnet \
    --scopes=https://www.googleapis.com/auth/cloud-platform \
    --no-address \
    --shielded-secure-boot --service-account=vertex-gce-sa@$projectid.iam.gserviceaccount.com \
    --metadata startup-script="#! /bin/bash
      sudo apt-get update
      sudo apt-get install tcpdump dnsutils -y"

Cloud Shell में, central-client बनाएं.

gcloud compute instances create central-client \
    --zone=us-central1-a \
    --image-family=debian-11 \
    --image-project=debian-cloud \
    --subnet=us-central1-subnet \
    --scopes=https://www.googleapis.com/auth/cloud-platform \
    --no-address \
    --shielded-secure-boot --service-account=vertex-gce-sa@$projectid.iam.gserviceaccount.com \
    --metadata startup-script="#! /bin/bash
      sudo apt-get update
      sudo apt-get install tcpdump dnsutils -y"

आईएपी को अपने वीएम इंस्टेंस से कनेक्ट करने की अनुमति देने के लिए, फ़ायरवॉल का ऐसा नियम बनाएं जो:

  • यह उन सभी वीएम इंस्टेंस पर लागू होता है जिन्हें आपको आईएपी का इस्तेमाल करके ऐक्सेस करना है.
  • इसकी मदद से, 35.235.240.0/20 आईपी रेंज से इन्ग्रेस ट्रैफ़िक को आने की अनुमति मिलती है. इस रेंज में वे सभी आईपी पते शामिल हैं जिनका इस्तेमाल IAP, टीसीपी फ़ॉरवर्डिंग के लिए करता है.

Cloud Shell में, IAP फ़ायरवॉल नियम बनाएं.

gcloud compute firewall-rules create ssh-iap-vpc \
    --network aiml-vpc \
    --allow tcp:22 \
    --source-ranges=35.235.240.0/20

8. उपयोगकर्ता के मैनेज किए गए नोटबुक बनाना

नोटबुक एपीआई को

यहां दिए गए सेक्शन में, उपयोगकर्ता के मैनेज किए गए ऐसे नोटबुक का इंस्टेंस बनाएं जिसमें पहले से बनाया गया सेवा खाता, user-managed-notebook-sa शामिल हो.

Cloud Shell में, private-client इंस्टेंस बनाएं.

gcloud notebooks instances create workbench-tutorial \
      --vm-image-project=deeplearning-platform-release \
      --vm-image-family=common-cpu-notebooks \
      --machine-type=n1-standard-4 \
      --location=us-central1-a \
      --subnet-region=us-central1 \
      --shielded-secure-boot \
      --subnet=workbench-subnet \
      --no-public-ip    --service-account=user-managed-notebook-sa@$projectid.iam.gserviceaccount.com

डिप्लॉय की गई नोटबुक देखने के लिए, Vertex AI → Workbench पर जाएं.

b02fcb9b07dca06a.png

9. मॉडल और ऑनलाइन अनुमान की सुविधा डिप्लॉय करना

नीचे दिए गए सेक्शन में, दिए गए कोड लैब,Vertex AI:Use custom prediction routines with Sklearn to preprocess and post process data for predictions का इस्तेमाल करें. सेक्शन 7 से शुरू करें, क्योंकि आपने पिछले चरण में पहले ही एक नोटबुक बना ली है. मॉडल को डिप्लॉय करने के बाद, अगले सेक्शन को शुरू करने के लिए ट्यूटोरियल पर वापस जाएं.

ee68b7ba0cfd2746.png

10. ऑनलाइन अनुमान के लिए, कस्टम मॉनिटरिंग डैशबोर्ड बनाना

ऑनलाइन प्रेडिक्शन, VERTEX AI → ऑनलाइन प्रेडिक्शन → एंडपॉइंट का नाम (diamonds-cpr_endpoint) में जाकर, डिफ़ॉल्ट मॉनिटरिंग डैशबोर्ड बनाता है. हालांकि, टेस्टिंग के लिए हमें शुरू और बंद होने का समय तय करना होगा. इसलिए, कस्टम डैशबोर्ड की ज़रूरत होगी.

यहां दिए गए सेक्शन में, Cloud Monitoring मेट्रिक बनाई जाएंगी. इनकी मदद से, ऑनलाइन अनुमान लगाने वाले एंडपॉइंट को क्षेत्र के हिसाब से ऐक्सेस करने पर लगने वाले समय का पता लगाया जा सकेगा. इससे, us-west1 और us-central में डिप्लॉय किए गए GCE इंस्टेंस से us-central1 में मौजूद एंडपॉइंट को ऐक्सेस करने पर लगने वाले अलग-अलग समय की पुष्टि की जा सकेगी.

ट्यूटोरियल के लिए, हम prediction_latencies मेट्रिक का इस्तेमाल करेंगे. aiplatform में अन्य मेट्रिक उपलब्ध हैं

मेट्रिक

ब्यौरा

prediction/online/prediction_latencies

डप्लॉय किए गए मॉडल के ऑनलाइन अनुमान की लेटेन्सी.

prediction_latencies मेट्रिक के लिए चार्ट बनाना

Cloud Console में, मॉनिटरिंग → मेट्रिक एक्सप्लोरर पर जाएं

536668ab0b29d77.png

मेट्रिक prediction/online/prediction_latencies डालें और ये विकल्प चुनें. इसके बाद, 'लागू करें' को चुनें.

c1edd34208cb5ee2.png

नीचे दिए गए विकल्प के आधार पर, 'इसके हिसाब से ग्रुप करें' को अपडेट करें. इसके बाद, 'चार्ट सेव करें' को चुनें.

e180a5d8a044b6e1.png

d2ecd6677a3b34e0.png

सेव करें को चुनें. इसके बाद, आपको कोई डैशबोर्ड चुनने के लिए कहा जाएगा. नया डैशबोर्ड चुनें और उसे कोई नाम दें.

e29a39dc941c8599.png

Vertex Custom Dashboard

यहां दिए गए सेक्शन में, पुष्टि करें कि Vertex Custom Dashboard पर सही समय दिख रहा है.

MONITORING → Dashboard पर जाएं. इसके बाद, Vertex Custom Dashboard को चुनें. इसके बाद, समय चुनें. पक्का करें कि आपका टाइम ज़ोन सही हो.

f43ebed798ce1147.png

टेबल व्यू पाने के लिए, लेजेंड को बड़ा करना न भूलें.

61ffeef22e067ca9.png

बड़ा करके दिखाए गए व्यू का उदाहरण:

9027e8785c023129.png

11. पीएससी एंडपॉइंट के लिए प्राइवेट डीएनएस बनाना

aiml-vpc में एक Private DNS Zone बनाएं, ताकि सभी googleapis को पीएससी एंडपॉइंट के आईपी पते 100.100.10.10 पर हल किया जा सके.

Cloud Shell से, एक निजी डीएनएस ज़ोन बनाएं.

gcloud dns --project=$projectid managed-zones create psc-googleapis --description="Private Zone to resolve googleapis to a PSC endpoint" --dns-name="googleapis.com." --visibility="private" --networks="https://www.googleapis.com/compute/v1/projects/$projectid/global/networks/aiml-vpc"

Cloud Shell में जाकर, ऐसा A रिकॉर्ड बनाएं जो *. googleapis.com को पीएससी आईपी से जोड़ता हो.

gcloud dns --project=$projectid record-sets create *.googleapis.com. --zone="psc-googleapis" --type="A" --ttl="300" --rrdatas="100.100.10.10"

12. Hey testing variables

Hey, असली उपयोगकर्ताओं को नेटवर्क और ऐप्लिकेशन की ज़रूरी शर्तों के आधार पर टेस्टिंग को पसंद के मुताबिक बनाने की सुविधा देता है. इस ट्यूटोरियल के लिए, हम नीचे दिए गए विकल्प का इस्तेमाल करेंगे. साथ ही, हम एक सैंपल एक्ज़ीक्यूशन स्ट्रिंग भी देंगे:

c == 1 वर्कर

z == Duration

m == HTTP method POST

D == फ़ाइल से एचटीटीपी अनुरोध का मुख्य हिस्सा, instances.json

n == अनुरोधों की संख्या. डिफ़ॉल्ट वैल्यू 200 है.

HEY के साथ कर्ल स्ट्रिंग का उदाहरण (इसे लागू करने की ज़रूरत नहीं है)

user@us-central$ ./hey_linux_amd64 -c 1 -z 1m -m POST -D instances.json  -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/${projectid$}/locations/us-central1/endpoints/${ENDPOINT_ID}:predict

13. अनुमान आईडी पाना

Cloud Console से अपना ऑनलाइन अनुमान लगाने वाला एंडपॉइंट आईडी पाएं. इसका इस्तेमाल अगले चरणों में किया जाएगा.

VERTEX AI → ऑनलाइन अनुमान पर जाएं

ce4d4a88a3fa2345.png

14. HEY (us-west1) को डाउनलोड और एक्ज़ीक्यूट करें

नीचे दिए गए सेक्शन में, आपको west-client में लॉग इन करना होगा. इसके बाद, us-central1 में मौजूद ऑनलाइन अनुमान के लिए, HEY को डाउनलोड और एक्ज़ीक्यूट करना होगा.

Cloud Shell से, west-client में लॉग इन करें और HEY डाउनलोड करें

gcloud compute ssh west-client --project=$projectid --zone=us-west1-a --tunnel-through-iap

ओएस से HEY डाउनलोड करें और अनुमतियां अपडेट करें.

wget https://hey-release.s3.us-east-2.amazonaws.com/hey_linux_amd64
chmod +x hey_linux_amd64

ओएस में, ये वैरिएबल बनाएं:

gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectid=YOUR-PROJECT-NAME
echo $projectid
ENDPOINT_ID="insert-your-endpoint-id-here"

उदाहरण:

ENDPOINT_ID="2706243362607857664"

यहां दिए गए सेक्शन में, vi एडिटर या नैनो का इस्तेमाल करके instances.json फ़ाइल बनाई जाएगी. साथ ही, डिप्लॉय किए गए मॉडल से अनुमान पाने के लिए इस्तेमाल की गई डेटा स्ट्रिंग डाली जाएगी.

वेस्ट-क्लाइंट ओएस से, नीचे दी गई डेटा स्ट्रिंग के साथ instances.json file बनाएं:

{"instances": [
  [0.23, 'Ideal', 'E', 'VS2', 61.5, 55.0, 3.95, 3.98, 2.43],
  [0.29, 'Premium', 'J', 'Internally Flawless', 52.5, 49.0, 4.00, 2.13, 3.11]]}

उदाहरण:

user@west-client:$ more instances.json 
{"instances": [
  [0.23, 'Ideal', 'E', 'VS2', 61.5, 55.0, 3.95, 3.98, 2.43],
  [0.29, 'Premium', 'J', 'Internally Flawless', 52.5, 49.0, 4.00, 2.13, 3.11]]}

user@west-client:$

प्री-टेस्ट

ओएस से, कर्ल को एक्ज़ीक्यूट करके यह पुष्टि करें कि मॉडल और अनुमान लगाने वाला एंडपॉइंट सही तरीके से काम कर रहा है. ज़्यादा जानकारी वाले लॉग में पीएससी एंडपॉइंट आईपी और HTTP/2 200 नोट करें. इससे पता चलता है कि कनेक्शन बन गया है.

curl -v -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/${projectid}/locations/us-central1/endpoints/${ENDPOINT_ID}:predict -d @instances.json

उदाहरण के लिए, अनुमान और नतीजे को ऐक्सेस करने के लिए इस्तेमाल किया गया पीएससी आईपी पता नोट करें.

user@west-client:$ curl -v -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/${projectid}/locations/us-central1/endpoints/${ENDPOINT_ID}:predict -d @instances.json
Note: Unnecessary use of -X or --request, POST is already inferred.
*   Trying 100.100.10.10:443...
* Connected to us-central1-aiplatform.googleapis.com (100.100.10.10) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*  CAfile: /etc/ssl/certs/ca-certificates.crt
*  CApath: /etc/ssl/certs
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
* TLSv1.3 (IN), TLS handshake, Certificate (11):
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
* TLSv1.3 (IN), TLS handshake, Finished (20):
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.3 (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: CN=upload.video.google.com
*  start date: Jul 31 08:22:19 2023 GMT
*  expire date: Oct 23 08:22:18 2023 GMT
*  subjectAltName: host "us-central1-aiplatform.googleapis.com" matched cert's "*.googleapis.com"
*  issuer: C=US; O=Google Trust Services LLC; CN=GTS CA 1C3
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
* Using Stream ID: 1 (easy handle 0x55a9f38b42c0)
> POST /v1/projects/new-test-project-396322/locations/us-central1/endpoints/2706243362607857664:predict HTTP/2
> Host: us-central1-aiplatform.googleapis.com
> user-agent: curl/7.74.0
> accept: */*
> authorization: Bearer ya29.c.b0Aaekm1LqrcaOlWFFwuEOWX_tZVXXvJgN_K-u5_hFyEAYXAi3AnBEBwwtHS8dweW_P2QGfdyFfa31nMT_6BaKBI0mC9IsfzfIiUwXc8u2yJt01gTUSJpCmGAFKZKidRMgkPYivVYCnuymzdYbRAWacIe__StkRzI9UeQOGN3jNIeESr80AdH12goaxCFXWaNWxoYRfGVhekEgUcsKs7t1OhOM-937gy4YGkXcXa8sGuHWRqF5bnulYlTqlxqQ2aAxMTrQg2lwUWRGCmGhPrym7rXJq7oim0DkAJSbAarl1qFuz0PPfNXeHGbs13zY2r1giV7u8_w4Umj_Q5M7H9fTkq7EiqnLzqRkOHXismYL368P1jOUBYM__krFQt4M3X9RJa0g01tOw3FnOh27BmUqlFQ1J2h14JZpx215Q3xzRvgfJ5iW5YYSkv67uZRQk4V04naOUXyc0plzWuVOjj4nor3fYvkS_oW0IyxJoBjeXR16Vnvln8c04svWX9dt7eobczFvBOm9nVdh4lVp8qxbp__2WtMvc1QVg6y-2i6lRpbvmyp1oadxVRjxV1e0wiQFSe-qqsinJu3bnnaMbxdU2cu5j26o8o8Xpgo0SF1UM0b1WX84iatbWpdFSphZm1llwmRagMzcFBW0aBk-i35_bXSbzwURgMfY6Qbyb9Rv9y0F-Maf34I0WxiMldv2uc57nej7dVl9OSm_Ohnro-i9zcpq9fxo9soYVB8WjaZOUjauk4znstc2_6y4atcVVsQBkeU674biR567Ri3M74Jfv4MrrF02ObfrJRdB7UJ4MU_9kWW-kYeeJzoci15UqYV0f_yJgReBwQa66Supmebee2Sn2nku6xZkRMu5Mz55mXuva0XWrpIbor7WckSsXwUFbf7rj5ipa4mOOyf2hJe1Rq0x6yeBaariRzXrhfm5bBpFBU73-zd-IekvOji0ZJQSkk0o6gpX_794Jny7j14aQJ8VxezcFpZUztimYhMnRhlO2lqms1h0h48
> content-type: application/json
> content-length: 158
> 
* Connection state changed (MAX_CONCURRENT_STREAMS == 100)!
* We are completely uploaded and fine
< HTTP/2 200 
< x-vertex-ai-internal-prediction-backend: harpoon
< content-type: application/json; charset=UTF-8
< date: Sun, 20 Aug 2023 03:51:54 GMT
< vary: X-Origin
< vary: Referer
< vary: Origin,Accept-Encoding
< server: scaffolding on HTTPServer2
< cache-control: private
< x-xss-protection: 0
< x-frame-options: SAMEORIGIN
< x-content-type-options: nosniff
< accept-ranges: none
< 
{
  "predictions": [
    "$479.0",
    "$586.0"
  ],
  "deployedModelId": "3587550310781943808",
  "model": "projects/884291964428/locations/us-central1/models/6829574694488768512",
  "modelDisplayName": "diamonds-cpr",
  "modelVersionId": "1"
}
* Connection #0 to host us-central1-aiplatform.googleapis.com left intact

HEY कमांड लागू करना

ओएस से, HEY को चालू करें. इससे 10 मिनट का बेसलाइन टेस्ट शुरू हो जाएगा.

./hey_linux_amd64 -c 1 -z 10m -m POST -D instances.json  -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/$projectid/locations/us-central1/endpoints/${ENDPOINT_ID}:predict

15. Hey Validation (us-west1)

अब जब आपने us-west1 में मौजूद कंप्यूट इंस्टेंस से Hey को एक्ज़ीक्यूट कर लिया है, तो यहां दिए गए विकल्पों से नतीजों का आकलन करें:

  • HEY के नतीजे
  • Vertex Custom Dashboard
  • नेटवर्क इंटेलिजेंस

HEY के नतीजे

ओएस से, 10 मिनट के एक्ज़ीक्यूशन के आधार पर, HEY के नतीजों की पुष्टि करते हैं,

17.5826 अनुरोध प्रति सेकंड

99% मामलों में 0.0686 सेकंड | 68 मि॰से॰

200 स्टेटस कोड वाले 10,550 जवाब

user@west-client:$ ./hey_linux_amd64 -c 1 -z 10m -m POST -D instances.json  -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/$projectid/locations/us-central1/endpoints/${ENDPOINT_ID}:predict

Summary:
  Total:        600.0243 secs
  Slowest:      0.3039 secs
  Fastest:      0.0527 secs
  Average:      0.0569 secs
  Requests/sec: 17.5826
  

Response time histogram:
  0.053 [1]     |
  0.078 [10514] |■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  0.103 [16]    |
  0.128 [4]     |
  0.153 [3]     |
  0.178 [1]     |
  0.203 [0]     |
  0.229 [2]     |
  0.254 [1]     |
  0.279 [5]     |
  0.304 [3]     |


Latency distribution:
  10% in 0.0546 secs
  25% in 0.0551 secs
  50% in 0.0559 secs
  75% in 0.0571 secs
  90% in 0.0596 secs
  95% in 0.0613 secs
  99% in 0.0686 secs

Details (average, fastest, slowest):
  DNS+dialup:   0.0000 secs, 0.0527 secs, 0.3039 secs
  DNS-lookup:   0.0000 secs, 0.0000 secs, 0.0116 secs
  req write:    0.0000 secs, 0.0000 secs, 0.0002 secs
  resp wait:    0.0567 secs, 0.0526 secs, 0.3038 secs
  resp read:    0.0001 secs, 0.0001 secs, 0.0696 secs

Status code distribution:
  [200] 10550 responses

Vertex Custom Dashboard

MONITORING → Dashboard पर जाएं और Vertex Custom Dashboard चुनें. 10 मिनट डालें या शुरू और खत्म होने का समय डालें. पक्का करें कि आपका टाइम ज़ोन सही हो.

4102b1d0438c78e3.png

अनुमान लगाने में लगने वाले समय की परिभाषा से पता चलता है कि यह सर्वर साइड की मेट्रिक है. इससे यह पता चलता है कि मॉडल से जवाब मिलने के बाद, क्लाइंट के अनुरोध का जवाब देने में कितना समय लगा.

  • कुल इंतज़ार का समय: किसी अनुरोध को सेवा में पूरा होने में लगने वाला कुल समय. यह मॉडल के इंतज़ार के समय और ओवरहेड के इंतज़ार के समय का योग होता है.

इसके उलट, एचईवाई एक क्लाइंट साइड मेट्रिक है. यह इन पैरामीटर को ध्यान में रखती है:

क्लाइंट का अनुरोध + कुल इंतज़ार का समय (इसमें मॉडल के इंतज़ार का समय शामिल है) + क्लाइंट का जवाब

नेटवर्क इंटेलिजेंस

अब हम Network Intelligence की ओर से रिपोर्ट की गई, अलग-अलग रीजन के बीच नेटवर्क की लेटेन्सी पर एक नज़र डालते हैं. इससे हमें Google Cloud Platform की ओर से रिपोर्ट की गई, us-west1 से us-central1 तक की लेटेन्सी के बारे में जानकारी मिलेगी.

Cloud Console में Network Intelligence → परफ़ॉर्मेंस डैशबोर्ड पर जाएं. इसके बाद, नीचे दिए गए स्क्रीनशॉट में बताए गए विकल्पों को चुनें. इससे आपको 32 से 39 मि॰से॰ की लेटेन्सी दिखेगी.

aade5f757115721.png

HEY us-west1 की बेसलाइन की खास जानकारी

टेस्ट टूल से मिली कुल लेटेन्सी की रिपोर्ट की तुलना करने पर, HEY से मिली लेटेन्सी की रिपोर्ट लगभग एक जैसी होती है. अलग-अलग क्षेत्रों के बीच डेटा ट्रांसफ़र में लगने वाला समय, कुल समय का ज़्यादातर हिस्सा होता है. आइए, देखते हैं कि टेस्ट की अगली सीरीज़ में सेंट्रल क्लाइंट कैसा परफ़ॉर्म करता है.

लेटेंसी टूल

कुल समय

नेटवर्क इंटेलिजेंस: us-west1 से us-central1 तक की लेटेंसी

~32 से 39 मि॰से॰

Cloud Monitoring: कुल पूर्वानुमान का इंतज़ार करने का समय [99वां पर्सेंटाइल]

34.58 मि॰से॰ (99वां पर्सेंटाइल)

Google की ओर से रिपोर्ट की गई कुल लेटेन्सी

~ 66.58 से 73.58 मि॰से॰

HEY क्लाइंट साइड लेटेन्सी डिस्ट्रिब्यूशन

68 मि॰से॰ (99वां पर्सेंटाइल)

16. HEY (us-central1) को डाउनलोड और एक्ज़ीक्यूट करें

यहां दिए गए सेक्शन में, आपको सेंट्रल-क्लाइंट में लॉग इन करना होगा. इसके बाद, us-central1 में मौजूद ऑनलाइन अनुमान के लिए, HEY को डाउनलोड और एक्ज़ीक्यूट करना होगा.

Cloud Shell से, central-client में लॉग इन करें और HEY डाउनलोड करें

gcloud compute ssh central-client --project=$projectid --zone=us-central1-a --tunnel-through-iap

ओएस से HEY डाउनलोड करें और अनुमतियां अपडेट करें.

wget https://hey-release.s3.us-east-2.amazonaws.com/hey_linux_amd64
chmod +x hey_linux_amd64

ओएस में, ये वैरिएबल बनाएं:

gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectid=YOUR-PROJECT-NAME
echo $projectid
ENDPOINT_ID="insert-your-endpoint-id-here"

उदाहरण:

ENDPOINT_ID="2706243362607857664"

यहां दिए गए सेक्शन में, vi एडिटर या नैनो का इस्तेमाल करके instances.json फ़ाइल बनाई जाएगी. साथ ही, डिप्लॉय किए गए मॉडल से अनुमान पाने के लिए इस्तेमाल की गई डेटा स्ट्रिंग डाली जाएगी.

वेस्ट-क्लाइंट ओएस से, नीचे दी गई डेटा स्ट्रिंग के साथ instances.json file बनाएं:

{"instances": [
  [0.23, 'Ideal', 'E', 'VS2', 61.5, 55.0, 3.95, 3.98, 2.43],
  [0.29, 'Premium', 'J', 'Internally Flawless', 52.5, 49.0, 4.00, 2.13, 3.11]]}

उदाहरण:

user@west-client:$ more instances.json 
{"instances": [
  [0.23, 'Ideal', 'E', 'VS2', 61.5, 55.0, 3.95, 3.98, 2.43],
  [0.29, 'Premium', 'J', 'Internally Flawless', 52.5, 49.0, 4.00, 2.13, 3.11]]}

user@west-client:$

प्री-टेस्ट

ओएस से, कर्ल को एक्ज़ीक्यूट करके यह पुष्टि करें कि मॉडल और अनुमान लगाने वाला एंडपॉइंट सही तरीके से काम कर रहा है. ज़्यादा जानकारी वाले लॉग में पीएससी एंडपॉइंट आईपी और HTTP/2 200 नोट करें. इससे पता चलता है कि कनेक्शन बन गया है.

curl -v -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/${projectid}/locations/us-central1/endpoints/${ENDPOINT_ID}:predict -d @instances.json

उदाहरण के लिए, अनुमान और नतीजे को ऐक्सेस करने के लिए इस्तेमाल किया गया पीएससी आईपी पता नोट करें.

user@central-client:~$ curl -v -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/${projectid}/locations/us-central1/endpoints/${ENDPOINT_ID}:predict -d @instances.json
Note: Unnecessary use of -X or --request, POST is already inferred.
*   Trying 100.100.10.10:443...
* Connected to us-central1-aiplatform.googleapis.com (100.100.10.10) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*  CAfile: /etc/ssl/certs/ca-certificates.crt
*  CApath: /etc/ssl/certs
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
* TLSv1.3 (IN), TLS handshake, Certificate (11):
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
* TLSv1.3 (IN), TLS handshake, Finished (20):
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.3 (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: CN=upload.video.google.com
*  start date: Jul 31 08:22:19 2023 GMT
*  expire date: Oct 23 08:22:18 2023 GMT
*  subjectAltName: host "us-central1-aiplatform.googleapis.com" matched cert's "*.googleapis.com"
*  issuer: C=US; O=Google Trust Services LLC; CN=GTS CA 1C3
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
* Using Stream ID: 1 (easy handle 0x559b57adc2c0)
> POST /v1/projects/new-test-project-396322/locations/us-central1/endpoints/2706243362607857664:predict HTTP/2
> Host: us-central1-aiplatform.googleapis.com
> user-agent: curl/7.74.0
> accept: */*
> authorization: Bearer ya29.c.b0Aaekm1KWqq-CIXuL6f1cx9d9jHHquQq9tlSV1oVZ1y3TACi82JFFZRwsagVY7MMovycsU4PLkt9MDMkNngxZE5RzXcS-AoaUaQf1tPT9-_JMTlFI6wCcR7Yr9MeRF5AZblr_k52ZZgEZKeYGcrXoGiqGQcAAwFtHiEVAkUhLuyukteXbMoep1JM9E0zFblJj7Z0yOCMJYBH-6XHcIDYnOKpStMVBR2wcTDbnFrCE08HXbvRnQVcENatTBoI9FzSVL1ORwqUiCcdfnTSjpIXcyD-W82d6ZHjGX_RUhfnH7RPfOJqkuU8pOovwoCjq_jvM_wJUfPuQnBKHp5rxbYxPE349DMBql62po2SWFguuFo-a2eoUnb8-FQeBZqan65zgV0lexR73gZlm071y9grlXv3fmJUo7vlj5W-7_-FJXaWWg8iWc6rmjYeO1Wz2h_8qnmojkX9xSUciI6JfmwdgMWwtvwJb63ppSmdwf8oagrYiQlpMzgRI6rekbRzg-1WOBeOf5nRg5vtxUMSc9iRaoarO5XwFX8vt7rxOUBvbXYVWmo3bsdhzsS9VopMwgMlxgcIJg7bq7_F3iapB-nRjfjfhZWpR83cWIkI2Wb9f89inpsxtYjZbbzdWkZvRB8FYSsY8F8tcpiVoWWyQWZiph9z7O59fF9irWY2gtUnbFcJJ_ZcYztjlMQaR45y42ZflkM3Qn668bzge3Y3hmVI1s6ZSmxxq6m27hoMwVn21R07Y613jwljmaFJ5V8MwkR6yvFhYngrh_JrhRUQtSSMh02Rz25wMfv7g8Fiqymr-12viM4btIFjXZBM3XFqzvso_rw1omI1yYWofmbaBYggpegpJBzSeqVUZe791agjVtiMUkyjXFy__9gI0Qk9ZUarI4p25SvS4I1hX4YyBk6ol32Z5zIsVr1Seff__aklm6M2Mlkumd7nurm46hjOIoOhFpfFxrQ6yivnhYapBOJMYirgbZvigvI3dom1fnmt0-ktmRxp69w7Uzzy
> content-type: application/json
> content-length: 158
> 
* Connection state changed (MAX_CONCURRENT_STREAMS == 100)!
* We are completely uploaded and fine
< HTTP/2 200 
< x-vertex-ai-internal-prediction-backend: harpoon
< date: Sun, 20 Aug 2023 22:25:31 GMT
< content-type: application/json; charset=UTF-8
< vary: X-Origin
< vary: Referer
< vary: Origin,Accept-Encoding
< server: scaffolding on HTTPServer2
< cache-control: private
< x-xss-protection: 0
< x-frame-options: SAMEORIGIN
< x-content-type-options: nosniff
< accept-ranges: none
< 
{
  "predictions": [
    "$479.0",
    "$586.0"
  ],
  "deployedModelId": "3587550310781943808",
  "model": "projects/884291964428/locations/us-central1/models/6829574694488768512",
  "modelDisplayName": "diamonds-cpr",
  "modelVersionId": "1"
}
* Connection #0 to host us-central1-aiplatform.googleapis.com left intact

HEY को लागू करना

ओएस से, HEY को चालू करें और 10 मिनट का बेसलाइन टेस्ट करें.

./hey_linux_amd64 -c 1 -z 10m -m POST -D instances.json  -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/$projectid/locations/us-central1/endpoints/${ENDPOINT_ID}:predict

17. Hey Validation (us-central1)

अब जब आपने us-central1 में मौजूद कंप्यूट इंस्टेंस से Hey को एक्ज़ीक्यूट कर लिया है, तो यहां दिए गए विकल्पों के हिसाब से नतीजों का आकलन करें:

  • HEY के नतीजे
  • Vertex Custom Dashboard
  • नेटवर्क इंटेलिजेंस

HEY नतीजे

ओएस से, 10 मिनट के एक्ज़ीक्यूशन के आधार पर, HEY के नतीजों की पुष्टि करते हैं,

44.9408 अनुरोध प्रति सेकंड

99% in 0.0353 secs | 35 ms

200 स्टेटस कोड वाले 26965 जवाब

devops_user_1_deepakmichael_alto@central-client:~$ ./hey_linux_amd64 -c 1 -z 10m -m POST -D instances.json  -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/$projectid/locations/us-central1/endpoints/${ENDPOINT_ID}:predict

Summary:
  Total:        600.0113 secs
  Slowest:      0.3673 secs
  Fastest:      0.0184 secs
  Average:      0.0222 secs
  Requests/sec: 44.9408
  

Response time histogram:
  0.018 [1]     |
  0.053 [26923] |■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  0.088 [25]    |
  0.123 [4]     |
  0.158 [0]     |
  0.193 [1]     |
  0.228 [9]     |
  0.263 [1]     |
  0.298 [0]     |
  0.332 [0]     |
  0.367 [1]     |


Latency distribution:
  10% in 0.0199 secs
  25% in 0.0205 secs
  50% in 0.0213 secs
  75% in 0.0226 secs
  90% in 0.0253 secs
  95% in 0.0273 secs
  99% in 0.0353 secs

Details (average, fastest, slowest):
  DNS+dialup:   0.0000 secs, 0.0184 secs, 0.3673 secs
  DNS-lookup:   0.0000 secs, 0.0000 secs, 0.0079 secs
  req write:    0.0000 secs, 0.0000 secs, 0.0007 secs
  resp wait:    0.0220 secs, 0.0182 secs, 0.3672 secs
  resp read:    0.0002 secs, 0.0001 secs, 0.0046 secs

Status code distribution:
  [200] 26965 responses

Vertex Custom Dashboard

MONITORING → Dashboard पर जाएं और Vertex Custom Dashboard को चुनें. इसके बाद, 10m डालें. या शुरू और बंद होने का समय. पक्का करें कि आपका टाइम ज़ोन सही हो.

पिछले 10 मिनट के लिए अनुमान लगाने में लगने वाला समय 30.533 मि॰से॰ है.

अनुमान लगाने में लगने वाले समय की परिभाषा से पता चलता है कि यह सर्वर साइड की मेट्रिक है. इससे यह पता चलता है कि मॉडल से जवाब मिलने के बाद, क्लाइंट के अनुरोध का जवाब देने में कितना समय लगा.

  • कुल इंतज़ार का समय: किसी अनुरोध को सेवा में पूरा होने में लगने वाला कुल समय. यह मॉडल के इंतज़ार के समय और ओवरहेड के इंतज़ार के समय का योग होता है.

इसके उलट, एचईवाई एक क्लाइंट साइड मेट्रिक है. यह इन पैरामीटर को ध्यान में रखती है:

क्लाइंट का अनुरोध + कुल इंतज़ार का समय (इसमें मॉडल के इंतज़ार का समय शामिल है) + क्लाइंट का जवाब

नेटवर्क इंटेलिजेंस

अब हम Network Intelligence की ओर से रिपोर्ट की गई, एक ही इलाके में नेटवर्क की लेटेन्सी पर नज़र डालते हैं. इससे हमें Google Cloud Platform की ओर से रिपोर्ट की गई us-central1 की लेटेन्सी के बारे में जानकारी मिलेगी.

Cloud Console में, Network Intelligence → परफ़ॉर्मेंस डैशबोर्ड पर जाएं. इसके बाद, नीचे दिए गए स्क्रीनशॉट में बताए गए विकल्पों को चुनें. इनमें .2 से .8 मि॰से॰ तक की लेटेन्सी दिखाई गई है.

eaa84848c3185fde.png

HEY us-central1 की बेसलाइन की खास जानकारी

जांच करने वाले टूल से मिली कुल लेटेन्सी की तुलना करने पर, यह पता चलता है कि एक ही इलाके में कंप्यूट (सेंट्रल-क्लाइंट) और Vertex एंडपॉइंट (मॉडल और ऑनलाइन अनुमान) की वजह से, वेस्ट-क्लाइंट की तुलना में लेटेन्सी कम होती है.

लेटेंसी टूल

कुल समय

नेटवर्क इंटेलिजेंस: us-central1 क्षेत्र में इंतज़ार का समय

~.2 से .8 मि॰से॰

Cloud Monitoring: कुल पूर्वानुमान का इंतज़ार करने का समय [99वां पर्सेंटाइल]

30.533 मि॰से॰ (99वां पर्सेंटाइल)

Google की ओर से रिपोर्ट की गई कुल लेटेन्सी

~30.733 से 31.333 मि॰से॰

HEY क्लाइंट साइड इंतज़ार का समय

35 मि॰से॰ (99वां पर्सेंटाइल)

18. बधाई हो

बधाई हो, आपने क्लाइंट-साइड पर अनुमान लगाने की बुनियादी लेटेन्सी पाने के लिए, Cloud Monitoring और Network Intelligence का इस्तेमाल करके HEY को डिप्लॉय और पुष्टि कर ली है. जांच के आधार पर, आपको यह पता लगाना था कि us-central में मौजूद अनुमान लगाने वाले एंडपॉइंट को अलग-अलग क्षेत्रों में इस्तेमाल किया जा सकता है. हालांकि, इसमें कुछ समय लग रहा था.

Cosmopup को ट्यूटोरियल बहुत पसंद हैं!!

e6d3675ca7c6911f.jpeg

19. व्यवस्थित करें

Cloud Shell से, ट्यूटोरियल के कॉम्पोनेंट मिटाएं.

gcloud compute instances delete central-client --zone=us-central1-a -q

gcloud compute instances delete west-client --zone=us-west1-a -q

gcloud compute instances delete workbench-tutorial --zone=us-central1-a -q

gcloud compute forwarding-rules delete pscvertex --global --quiet 

gcloud compute addresses delete psc-ip --global --quiet

gcloud compute networks subnets delete workbench-subnet --region=us-central1 --quiet 

gcloud compute networks subnets delete us-west1-subnet --region=us-west1 --quiet

gcloud compute networks subnets delete us-central1-subnet --region=us-central1 --quiet

gcloud compute routers delete cloud-router-us-west1-aiml-nat --region=us-west1 --quiet

gcloud compute routers delete cloud-router-us-central1-aiml-nat --region=us-central1 --quiet

gcloud compute firewall-rules delete  ssh-iap-vpc --quiet

gcloud dns record-sets delete *.googleapis.com. --zone=psc-googleapis --type=A --quiet

gcloud dns managed-zones delete psc-googleapis --quiet

gcloud compute networks delete aiml-vpc --quiet

gcloud storage rm -r gs://$projectid-cpr-bucket

Cloud Console से इन्हें मिटा दिया गया है:

Artifact Registry फ़ोल्डर

99c17044e2f80919.png

Vertex AI Model Registry से, मॉडल को अनडिप्लॉय करें:

f5b315f089ae6283.png

Vertex AI Online Prediction से, एंडपॉइंट मिटाएं

9b58688a5037de84.png

आगे क्या करना है?

इनमें से कुछ ट्यूटोरियल देखें...

ज़्यादा जानकारी और वीडियो

रेफ़रंस दस्तावेज़