Vertex AI alloue des nœuds pour gérer les inférences en ligne et par lot.
Lorsque vous déployez un modèle personnalisé ou un modèle AutoML sur une ressource Endpoint
pour diffuser des inférences en ligne ou lorsque vous demandez des inférences par lot, vous pouvez personnaliser le type de machine virtuelle utilisé par le service d'inférence pour ces nœuds. Vous pouvez éventuellement configurer les nœuds d'inférence pour utiliser des GPU.
Les types de machines présentent plusieurs différences :
- Le nombre de processeurs virtuels par nœud.
- La quantité de mémoire par nœud.
- Tarifs
Sélectionner un type de machine possédant davantage de ressources de calcul vous permet de diffuser des inférences avec une latence plus faible ou de gérer simultanément davantage de requêtes d'inférence.
Gérer le coût et la disponibilité
Pour vous aider à gérer les coûts ou à assurer la disponibilité des ressources de VM, Vertex AI propose les éléments suivants :
Pour vous assurer de ne payer que les ressources de calcul dont vous avez besoin, vous pouvez utiliser l'autoscaling de Vertex AI Inference. Pour en savoir plus, consultez Mettre à l'échelle les nœuds d'inférence pour Vertex AI Inference.
Pour vous assurer que des ressources de VM sont disponibles lorsque vos jobs d'inférence en ont besoin, vous pouvez utiliser des réservations Compute Engine. Les réservations offrent un niveau élevé d'assurance pour l'obtention de la capacité des ressources Compute Engine. Pour en savoir plus, consultez Utiliser des réservations avec l'inférence.
Pour réduire le coût d'exécution de vos jobs d'inférence, vous pouvez utiliser des VM Spot. Les VM Spot sont des instances de machine virtuelle (VM) qui dépassent la capacité de Compute Engine. Des remises importantes sont accordées sur les VM Spot. Toutefois, Compute Engine peut à tout moment arrêter ou supprimer (de manière préemptive) des VM Spot, afin de récupérer de la capacité. Pour en savoir plus, consultez Utiliser des VM Spot avec l'inférence.
Où spécifier les ressources de calcul
Inférence en ligne
Si vous souhaitez utiliser un modèle entraîné personnalisé ou un modèle tabulaire AutoML pour réaliser des inférences en ligne, vous devez spécifier un type de machine lorsque vous déployez la ressource Model
en tant que DeployedModel
sur un Endpoint
. Pour les autres types de modèles AutoML, Vertex AI configure automatiquement les types de machines.
Spécifiez le type de machine (et éventuellement la configuration de GPU) dans le champ dedicatedResources.machineSpec
de votre DeployedModel
.
Découvrez comment déployer chaque type de modèle :
- Déployer un modèle tabulaire AutoML dans la console Google Cloud
- Déployer un modèle entraîné personnalisé dans la console Google Cloud
- Déployer un modèle personnalisé à l'aide de bibliothèques clientes
Inférence par lot
Si vous souhaitez obtenir des inférences par lot à partir d'un modèle personnalisé ou d'un modèle tabulaire AutoML, vous devez spécifier un type de machine lorsque vous créez une ressource BatchPredictionJob
. Spécifiez le type de machine (et éventuellement la configuration de GPU) dans le champ dedicatedResources.machineSpec
de votre BatchPredictionJob
.
Types de machine
Le tableau suivant compare les types de machines disponibles pour diffuser les inférences à partir de modèles entraînés et de modèles tabulaires AutoML :
Série E2
Nom | Processeurs virtuels | Mémoire (Go) |
---|---|---|
e2-standard-2 |
2 | 8 |
e2-standard-4 |
4 | 16 |
e2-standard-8 |
8 | 32 |
e2-standard-16 |
16 | 64 |
e2-standard-32 |
32 | 128 |
e2-highmem-2 |
2 | 16 |
e2-highmem-4 |
4 | 32 |
e2-highmem-8 |
8 | 64 |
e2-highmem-16 |
16 | 128 |
e2-highcpu-2 |
2 | 2 |
e2-highcpu-4 |
4 | 4 |
e2-highcpu-8 |
8 | 8 |
e2-highcpu-16 |
16 | 16 |
e2-highcpu-32 |
32 | 32 |
Série N1
Nom | Processeurs virtuels | Mémoire (Go) |
---|---|---|
n1-standard-2 |
2 | 7,5 |
n1-standard-4 |
4 | 15 |
n1-standard-8 |
8 | 30 |
n1-standard-16 |
16 | 60 |
n1-standard-32 |
32 | 120 |
n1-highmem-2 |
2 | 13 |
n1-highmem-4 |
4 | 26 |
n1-highmem-8 |
8 | 52 |
n1-highmem-16 |
16 | 104 |
n1-highmem-32 |
32 | 208 |
n1-highcpu-4 |
4 | 3.6 |
n1-highcpu-8 |
8 | 7,2 |
n1-highcpu-16 |
16 | 14,4 |
n1-highcpu-32 |
32 | 28,8 |
Série N2
Nom | Processeurs virtuels | Mémoire (Go) |
---|---|---|
n2-standard-2 |
2 | 8 |
n2-standard-4 |
4 | 16 |
n2-standard-8 |
8 | 32 |
n2-standard-16 |
16 | 64 |
n2-standard-32 |
32 | 128 |
n2-standard-48 |
48 | 192 |
n2-standard-64 |
64 | 256 |
n2-standard-80 |
80 | 320 |
n2-standard-96 |
96 | 384 |
n2-standard-128 |
128 | 512 |
n2-highmem-2 |
2 | 16 |
n2-highmem-4 |
4 | 32 |
n2-highmem-8 |
8 | 64 |
n2-highmem-16 |
16 | 128 |
n2-highmem-32 |
32 | 256 |
n2-highmem-48 |
48 | 384 |
n2-highmem-64 |
64 | 512 |
n2-highmem-80 |
80 | 640 |
n2-highmem-96 |
96 | 768 |
n2-highmem-128 |
128 | 864 |
n2-highcpu-2 |
2 | 2 |
n2-highcpu-4 |
4 | 4 |
n2-highcpu-8 |
8 | 8 |
n2-highcpu-16 |
16 | 16 |
n2-highcpu-32 |
32 | 32 |
n2-highcpu-48 |
48 | 48 |
n2-highcpu-64 |
64 | 64 |
n2-highcpu-80 |
80 | 80 |
n2-highcpu-96 |
96 | 96 |
Série N2D
Nom | Processeurs virtuels | Mémoire (Go) |
---|---|---|
n2d-standard-2 |
2 | 8 |
n2d-standard-4 |
4 | 16 |
n2d-standard-8 |
8 | 32 |
n2d-standard-16 |
16 | 64 |
n2d-standard-32 |
32 | 128 |
n2d-standard-48 |
48 | 192 |
n2d-standard-64 |
64 | 256 |
n2d-standard-80 |
80 | 320 |
n2d-standard-96 |
96 | 384 |
n2d-standard-128 |
128 | 512 |
n2d-standard-224 |
224 | 896 |
n2d-highmem-2 |
2 | 16 |
n2d-highmem-4 |
4 | 32 |
n2d-highmem-8 |
8 | 64 |
n2d-highmem-16 |
16 | 128 |
n2d-highmem-32 |
32 | 256 |
n2d-highmem-48 |
48 | 384 |
n2d-highmem-64 |
64 | 512 |
n2d-highmem-80 |
80 | 640 |
n2d-highmem-96 |
96 | 768 |
n2d-highcpu-2 |
2 | 2 |
n2d-highcpu-4 |
4 | 4 |
n2d-highcpu-8 |
8 | 8 |
n2d-highcpu-16 |
16 | 16 |
n2d-highcpu-32 |
32 | 32 |
n2d-highcpu-48 |
48 | 48 |
n2d-highcpu-64 |
64 | 64 |
n2d-highcpu-80 |
80 | 80 |
n2d-highcpu-96 |
96 | 96 |
n2d-highcpu-128 |
128 | 128 |
n2d-highcpu-224 |
224 | 224 |
Série C2
Nom | Processeurs virtuels | Mémoire (Go) |
---|---|---|
c2-standard-4 |
4 | 16 |
c2-standard-8 |
8 | 32 |
c2-standard-16 |
16 | 64 |
c2-standard-30 |
30 | 120 |
c2-standard-60 |
60 | 240 |
Série C2D
Nom | Processeurs virtuels | Mémoire (Go) |
---|---|---|
c2d-standard-2 |
2 | 8 |
c2d-standard-4 |
4 | 16 |
c2d-standard-8 |
8 | 32 |
c2d-standard-16 |
16 | 64 |
c2d-standard-32 |
32 | 128 |
c2d-standard-56 |
56 | 224 |
c2d-standard-112 |
112 | 448 |
c2d-highcpu-2 |
2 | 4 |
c2d-highcpu-4 |
4 | 8 |
c2d-highcpu-8 |
8 | 16 |
c2d-highcpu-16 |
16 | 32 |
c2d-highcpu-32 |
32 | 64 |
c2d-highcpu-56 |
56 | 112 |
c2d-highcpu-112 |
112 | 224 |
c2d-highmem-2 |
2 | 16 |
c2d-highmem-4 |
4 | 32 |
c2d-highmem-8 |
8 | 64 |
c2d-highmem-16 |
16 | 128 |
c2d-highmem-32 |
32 | 256 |
c2d-highmem-56 |
56 | 448 |
c2d-highmem-112 |
112 | 896 |
Série C3
Nom | Processeurs virtuels | Mémoire (Go) |
---|---|---|
c3-highcpu-4 |
4 | 8 |
c3-highcpu-8 |
8 | 16 |
c3-highcpu-22 |
22 | 44 |
c3-highcpu-44 |
44 | 88 |
c3-highcpu-88 |
88 | 176 |
c3-highcpu-176 |
176 | 352 |
Serie A2
Nom | Processeurs virtuels | Mémoire (Go) | GPU (NVIDIA A100) |
---|---|---|---|
a2-highgpu-1g |
12 | 85 | 1 (A100 40 Go) |
a2-highgpu-2g |
24 | 170 | 2 (A10 40 Go) |
a2-highgpu-4g |
48 | 340 | 4 (A100 40 Go) |
a2-highgpu-8g |
96 | 680 | 8 (A100 40 Go) |
a2-megagpu-16g |
96 | 1360 | 16 (A100 40 Go) |
a2-ultragpu-1g |
12 | 170 | 1 (A100 80 Go) |
a2-ultragpu-2g |
24 | 340 | 2 (A100 80 Go) |
a2-ultragpu-4g |
48 | 680 | 4 (A100 80 Go) |
a2-ultragpu-8g |
96 | 1360 | 8 (A100 80 Go) |
Série A3
Nom | Processeurs virtuels | Mémoire (Go) | GPU (NVIDIA H100 ou H200) |
---|---|---|---|
a3-highgpu-1g |
26 | 234 | 1 (H100 80 Go) |
a3-highgpu-2g |
52 | 468 | 2 (H100 80 Go) |
a3-highgpu-4g |
104 | 936 | 4 (H100 80 Go) |
a3-highgpu-8g |
208 | 1872 | 8 (H100 80 G0) |
a3-edgegpu-8g |
208 | 1872 | 8 (H100 80 G0) |
a3-ultragpu-8g |
224 | 2952 | 8 (H200 141 Go) |
Série A4X
Nom | Processeurs virtuels | Mémoire (Go) | GPU (NVIDIA GB200) |
---|---|---|---|
a4x-highgpu-4g |
140 | 884 | 4 |
Série G2
Nom | Processeurs virtuels | Mémoire (Go) | GPU (NVIDIA L4) |
---|---|---|---|
g2-standard-4 |
4 | 16 | 1 |
g2-standard-8 |
8 | 32 | 1 |
g2-standard-12 |
12 | 48 | 1 |
g2-standard-16 |
16 | 64 | 1 |
g2-standard-24 |
24 | 96 | 2 |
g2-standard-32 |
32 | 128 | 1 |
g2-standard-48 |
48 | 192 | 4 |
g2-standard-96 |
96 | 384 | 8 |
Apprenez-en plus sur la tarification des différents types de machines. Pour en savoir plus sur les spécifications détaillées de ces types de machines, consultez la documentation de Compute Engine sur les types de machines.
Rechercher le type de machine idéal
Inférence en ligne
Pour rechercher le type de machine adapté à votre cas d'utilisation, nous vous recommandons de charger votre modèle sur plusieurs types de machines et de mesurer des caractéristiques telles que la latence, le coût, la simultanéité et le débit.
Pour ce faire, vous pouvez exécuter ce notebook sur plusieurs types de machines et comparer les résultats pour trouver celui qui vous convient le mieux.
Vertex AI réserve environ un processeur virtuel sur chaque instance dupliquée pour exécuter les processus système. Cela signifie que l'exécution du notebook sur un seul type de machine à cœur unique est comparable à l'utilisation d'un type de machine à deux cœurs pour la diffusion des inférences.
Lorsque vous étudiez les coûts d'inférence, n'oubliez pas que bien que les machines plus volumineuses coûtent plus cher, elles peuvent réduire le coût global, car moins d'instances dupliquées sont nécessaires pour diffuser la même charge de travail. C'est particulièrement vrai pour les GPU, qui coûtent généralement plus cher par heure, mais peuvent à la fois offrir une latence inférieure et un coût moins élevé.
Inférence par lot
Pour en savoir plus, consultez la section Choisir le type de machine et le nombre d'instances dupliquées.
Accélérateurs de GPU facultatifs
Certaines configurations, telles que la série A2 et la série G2, disposent d'un nombre fixe de GPU intégrés.
La série A4X (a4x-highgpu-4g
) nécessite un nombre minimal de réplicas de 18. Cette machine est achetée par rack et comporte au moins 18 VM.
D'autres configurations, telles que la série N1, vous permettent d'ajouter des GPU pour accélérer chaque nœud d'inférence.
Pour ajouter des accélérateurs de GPU facultatifs, vous devez tenir compte de plusieurs exigences :
- Vous ne pouvez utiliser des GPU que lorsque votre ressource
Model
est basée sur un modèle SavedModel TensorFlow ou lorsque vous utilisez un conteneur personnalisé conçu pour tirer parti des GPU. Vous ne pouvez pas utiliser de GPU pour les modèles scikit-learn ou XGBoost. - La disponibilité de chaque type de GPU varie en fonction de la région que vous utilisez pour votre modèle. Découvrez les types de GPU disponibles selon les régions.
- Vous ne pouvez utiliser qu'un seul type de GPU pour votre ressource
DeployedModel
ou votreBatchPredictionJob
, et il existe certaines restrictions sur le nombre de GPU que vous pouvez ajouter suivant le type de machine que vous utilisez. Le tableau suivant décrit ces limitations.
Le tableau suivant illustre les GPU facultatifs qui sont disponibles pour l'inférence en ligne et, pour chaque type de machine Compute Engine, le nombre de GPU de chaque type que vous pouvez utiliser :
Nombre de GPU autorisés pour chaque type de machine | |||||
---|---|---|---|---|---|
Type de machine | NVIDIA Tesla P100 | NVIDIA Tesla V100 | NVIDIA Tesla P4 | NVIDIA Tesla T4 | |
n1-standard-2 |
1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 | |
n1-standard-4 |
1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 | |
n1-standard-8 |
1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 | |
n1-standard-16 |
1, 2, 4 | 2, 4, 8 | 1, 2, 4 | 1, 2, 4 | |
n1-standard-32 |
2, 4 | 4, 8 | 2, 4 | 2, 4 | |
n1-highmem-2 |
1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 | |
n1-highmem-4 |
1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 | |
n1-highmem-8 |
1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 | |
n1-highmem-16 |
1, 2, 4 | 2, 4, 8 | 1, 2, 4 | 1, 2, 4 | |
n1-highmem-32 |
2, 4 | 4, 8 | 2, 4 | 2, 4 | |
n1-highcpu-2 |
1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 | |
n1-highcpu-4 |
1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 | |
n1-highcpu-8 |
1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 | |
n1-highcpu-16 |
1, 2, 4 | 2, 4, 8 | 1, 2, 4 | 1, 2, 4 | |
n1-highcpu-32 |
2, 4 | 4, 8 | 2, 4 | 2, 4 |
Les GPU facultatifs entraînent des coûts supplémentaires.
Coschedule multiple replicas on a single VM
Pour optimiser le coût de votre déploiement, vous pouvez déployer plusieurs répliques du même modèle sur une seule VM équipée de plusieurs accélérateurs matériels GPU, comme la VM a3-highgpu-8g
, qui dispose de huit GPU NVIDIA H100. Chaque réplique de modèle peut être attribuée à un ou plusieurs GPU.
Pour les charges de travail plus petites, vous pouvez également partitionner un seul GPU en plusieurs instances plus petites à l'aide des GPU multi-instances (MIG) NVIDIA. Cela vous permet d'attribuer des ressources au niveau du sous-GPU, ce qui maximise l'utilisation de chaque accélérateur. Pour en savoir plus sur les GPU multi-instances, consultez le guide de l'utilisateur sur les GPU multi-instances NVIDIA.
Ces deux fonctionnalités sont conçues pour améliorer l'utilisation des ressources et la rentabilité de vos charges de travail de diffusion.
Limites
Cette fonctionnalité est soumise aux limites suivantes :
- Toutes les répliques de modèle coscheduled doivent être de la même version de modèle.
- L'utilisation de pools de ressources de déploiement pour partager des ressources entre les déploiements n'est pas prise en charge.
Types de machines compatibles
Les types de machines suivants sont acceptés. Notez que pour les types de machines qui ne disposent que d'un seul GPU, aucune planification conjointe n'est nécessaire.
Type de machine | CoSchedule | CoSchedule + MIG |
---|---|---|
a2-highgpu-1g | N/A | Oui |
a2-highgpu-2g | Oui | Oui |
a2-highgpu-4g | Oui | Oui |
a2-highgpu-8g | Oui | Oui |
a2-highgpu-16g | Oui | Oui |
a2-ultragpu-1g | N/A | Oui |
a2-ultragpu-2g | Oui | Oui |
a2-ultragpu-4g | Oui | Oui |
a2-ultragpu-8g | Oui | Oui |
a3-edgegpu-8g | Oui | Oui |
a3-highgpu-1g | N/A | Oui |
a3-highgpu-2g | Oui | Oui |
a3-highgpu-4g | Oui | Oui |
a3-highgpu-8g | Oui | Oui |
a3-megagpu-8g | Oui | Oui |
a3-ultragpu-8g | Oui | Oui |
a4-highgpu-8g | Oui | Oui |
a4x-highgpu-8g | Oui | Non |
Prérequis
Avant d'utiliser cette fonctionnalité, consultez Déployer un modèle à l'aide de la gcloud CLI ou de l'API Vertex AI.
Déployer les répliques du modèle
Les exemples suivants montrent comment déployer des répliques de modèles coscheduled.
gcloud
Utilisez la commande gcloud
suivante pour déployer des répliques de modèle coscheduled sur une VM :
gcloud ai endpoints deploy-model ENDPOINT_ID \
--region=LOCATION_ID \
--model=MODEL_ID \
--display-name=DEPLOYED_MODEL_NAME \
--min-replica-count=MIN_REPLICA_COUNT \
--max-replica-count=MAX_REPLICA_COUNT \
--machine-type=MACHINE_TYPE \
--accelerator=type=ACC_TYPE,count=ACC_COUNT \
--traffic-split=0=100
Remplacez les éléments suivants :
- ENDPOINT_ID : ID du point de terminaison.
- LOCATION_ID : région dans laquelle vous utilisez Vertex AI.
- MODEL_ID : ID du modèle à déployer.
-
DEPLOYED_MODEL_NAME : nom de l'élément
DeployedModel
. Vous pouvez également utiliser le nom à afficher duModel
pour leDeployedModel
. - MIN_REPLICA_COUNT : nombre minimal de nœuds pour ce déploiement. Le nombre de nœuds peut être augmenté ou réduit selon les besoins de la charge d'inférence, dans la limite du nombre maximal de nœuds et sans jamais être inférieur à ce nombre minimal de nœuds.
- MAX_REPLICA_COUNT : nombre maximal de nœuds pour ce déploiement. Le nombre de nœuds peut être augmenté ou réduit selon les besoins de la charge d'inférence, dans la limite de ce nombre de nœuds et jamais moins que le nombre minimal de nœuds. . Une VM est requise pour chaque groupe de deux instances répliquées à déployer.
- MACHINE_TYPE : type de VM à utiliser pour ce déploiement. Doit appartenir à la famille optimisée pour les accélérateurs.
- ACC_TYPE : type d'accélérateur GPU. Doit correspondre à MACHINE_TYPE. Pour
a3-highgpu-8g
, utiliseznvidia-h100-80gb
. - ACC_COUNT : nombre de GPU que chaque réplica peut utiliser. Doit être au moins égal à 1 et ne pas dépasser le nombre total de GPU de la machine.
REST
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_NUMBER : numéro du projet.
- LOCATION_ID : région dans laquelle vous utilisez Vertex AI.
- MODEL_ID : ID du modèle à déployer.
-
DEPLOYED_MODEL_NAME : nom de l'élément
DeployedModel
. Vous pouvez également utiliser le nom à afficher duModel
pour leDeployedModel
. -
MACHINE_TYPE (facultatif) : Ressources machine utilisées pour chaque nœud de ce déploiement. Le paramètre par défaut est
n1-standard-2
. En savoir plus sur les types de machines. - ACC_TYPE : type d'accélérateur GPU. Doit correspondre à `GPU_PARTITION_SIZE`.
- GPU_PARTITION_SIZE : taille de la partition GPU. Par exemple, "1g.10gb".
- ACC_COUNT : nombre de GPU que chaque réplica peut utiliser. Doit être au moins égal à 1 et ne pas dépasser le nombre total de GPU de la machine.
- MIN_REPLICA_COUNT : nombre minimal de nœuds pour ce déploiement. Le nombre de nœuds peut être augmenté ou réduit selon les besoins de la charge d'inférence, dans la limite du nombre maximal de nœuds et sans jamais être inférieur à ce nombre minimal de nœuds.
- MAX_REPLICA_COUNT : nombre maximal de nœuds pour ce déploiement. Le nombre de nœuds peut être augmenté ou réduit selon les besoins de la charge d'inférence, dans la limite de ce nombre de nœuds et jamais moins que le nombre minimal de nœuds.
Méthode HTTP et URL :
POST https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/endpoints/ENDPOINT_ID:deployModel
Corps JSON de la requête :
{ "deployedModel": { "model": "projects/PROJECT_NUMBER/locations/LOCATION_ID/models/MODEL_ID", "displayName": "DEPLOYED_MODEL_NAME", "dedicatedResources": { "machineSpec": { "machineType": "MACHINE_TYPE", "acceleratorType": "ACC_TYPE", "gpuPartitionSize": "GPU_PARTITION_SIZE", "acceleratorCount": "ACC_COUNT"" }, "minReplicaCount": MIN_REPLICA_COUNT, "maxReplicaCount": MAX_REPLICA_COUNT, "autoscalingMetricSpecs": [ { "metricName": "aiplatform.googleapis.com/prediction/online/accelerator/duty_cycle", "target": 70 } ] } } }
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir un code d'état indiquant le succès de l'opération (2xx), ainsi qu'une réponse vide.
Python
Pour savoir comment installer ou mettre à jour le SDK Vertex AI pour Python, consultez Installer le SDK Vertex AI pour Python. Pour en savoir plus, consultez la documentation de référence de l'API Python.
Utilisez la commande Python suivante pour déployer des répliques de modèle coscheduled sur une VM.
endpoint.deploy(
model=<var>MODEL</var>,
machine_type=MACHINE_TYPE,
min_replica_count=MIN_REPLICA_COUNT,
max_replica_count=MAX_REPLICA_COUNT,
accelerator_type=ACC_TYPE,
gpu_partition_size=GPU_PARTITION_SIZE,
accelerator_count=ACC_COUNT
)
Remplacez les éléments suivants :
MODEL : objet de modèle renvoyé par l'appel d'API suivant :
model = aiplatform.Model(model_name=model_name)
MACHINE_TYPE : type de VM à utiliser pour ce déploiement. Doit appartenir à la famille optimisée pour les accélérateurs. Dans l'aperçu, seul
a3-highgpu-8g
est pris en charge.MIN_REPLICA_COUNT : nombre minimal de nœuds pour ce déploiement. Le nombre de nœuds peut être augmenté ou réduit selon les besoins de la charge d'inférence, dans la limite du nombre maximal de nœuds et sans jamais être inférieur à ce nombre minimal de nœuds.
MAX_REPLICA_COUNT : nombre maximal de nœuds pour ce déploiement. Le nombre de nœuds peut être augmenté ou réduit selon les besoins de la charge d'inférence, dans la limite de ce nombre de nœuds et jamais moins que le nombre minimal de nœuds.
ACC_TYPE : type d'accélérateur GPU. Doit correspondre à GPU_PARTITION_SIZE.
GPU_PARTITION_SIZE : taille de la partition GPU. Exemple :
"1g.10gb"
. Pour obtenir la liste complète des tailles de partitions compatibles pour chaque type de GPU, consultez Partitions de GPU multi-instances.ACC_COUNT : nombre de GPU que chaque réplica peut utiliser. Doit être au moins égal à 1 et ne pas dépasser le nombre total de GPU de la machine. Pour
a3-highgpu-8g
, spécifiez une valeur comprise entre 1 et 8.
Surveiller l'utilisation des VM
Suivez les instructions ci-dessous pour surveiller le nombre réel de machines pour vos répliques déployées dans l'explorateur de métriques.
Dans la console Google Cloud , accédez à la page Explorateur de métriques.
Sélectionnez le projet pour lequel vous souhaitez afficher les métriques.
Dans le menu déroulant Métrique, cliquez sur Sélectionner une métrique.
Dans la barre de recherche Filtrer par nom de ressource ou de métrique, saisissez
Vertex AI Endpoint
.Sélectionnez la catégorie de métrique Point de terminaison Vertex AI > Prédiction. Sous Métriques actives, sélectionnez Nombre de machines.
Cliquez sur Appliquer.
Facturation
La facturation est basée sur le nombre de VM utilisées, et non sur le nombre de GPU. Vous pouvez surveiller l'utilisation de vos VM à l'aide de l'explorateur de métriques.
Haute disponibilité
Étant donné que plusieurs répliques sont coscheduled sur la même VM, Vertex AI Inference ne peut pas répartir votre déploiement sur plusieurs VM et donc sur plusieurs zones tant que le nombre de répliques ne dépasse pas le nœud de VM unique. Pour une haute disponibilité, Google recommande de déployer sur au moins deux nœuds (VM).
Étapes suivantes
- Déployer un modèle tabulaire AutoML dans la console Google Cloud
- Déployer un modèle entraîné personnalisé dans la console Google Cloud
- Déployer un modèle personnalisé à l'aide de bibliothèques clientes
- Obtenir des inférences par lot