Vertex AI attribue des nœuds pour gérer les prédictions 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 prédictions en ligne ou lorsque vous demandez des prédictions par lot, vous pouvez personnaliser le type de machine virtuelle utilisé par le service de prédiction pour ces nœuds. Vous pouvez éventuellement configurer les nœuds de prédiction 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.
- Tarif
Sélectionner un type de machine possédant davantage de ressources de calcul vous permet de diffuser des prédictions avec une latence plus faible ou de gérer simultanément davantage de requêtes de prédiction.
Où spécifier les ressources de calcul
Prédiction en ligne
Si vous souhaitez utiliser un modèle entraîné personnalisé ou un modèle tabulaire AutoML pour réaliser des prédictions 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 personnalisé dans la console Google Cloud
- Déployer un modèle personnalisé à l'aide de bibliothèques clientes
Prédiction par lot
Si vous souhaitez obtenir des prédictions 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 prédictions à partir de modèles entraînés et de modèles tabulaires AutoML :
Serie 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) |
---|---|---|---|
a3-highgpu-8g |
208 | 1872 | 8 (H100 80 G0) |
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
Prédiction 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 prédictions.
Lorsque vous étudiez les coûts de prédiction, 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é.
Prédiction 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.
D'autres configurations, telles que la série N1, vous permettent d'ajouter des GPU pour accélérer chaque nœud de prédiction.
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 la prédiction 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 K80 | NVIDIA Tesla P100 | NVIDIA Tesla V100 | NVIDIA Tesla P4 | NVIDIA Tesla T4 |
n1-standard-2 |
1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 |
n1-standard-4 |
1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 |
n1-standard-8 |
1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 |
n1-standard-16 |
2, 4, 8 | 1, 2, 4 | 2, 4, 8 | 1, 2, 4 | 1, 2, 4 |
n1-standard-32 |
4, 8 | 2, 4 | 4, 8 | 2, 4 | 2, 4 |
n1-highmem-2 |
1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 |
n1-highmem-4 |
1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 |
n1-highmem-8 |
1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 |
n1-highmem-16 |
2, 4, 8 | 1, 2, 4 | 2, 4, 8 | 1, 2, 4 | 1, 2, 4 |
n1-highmem-32 |
4, 8 | 2, 4 | 4, 8 | 2, 4 | 2, 4 |
n1-highcpu-2 |
1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 |
n1-highcpu-4 |
1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 |
n1-highcpu-8 |
1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4, 8 | 1, 2, 4 | 1, 2, 4 |
n1-highcpu-16 |
2, 4, 8 | 1, 2, 4 | 2, 4, 8 | 1, 2, 4 | 1, 2, 4 |
n1-highcpu-32 |
4, 8 | 2, 4 | 4, 8 | 2, 4 | 2, 4 |
Les GPU facultatifs entraînent des coûts supplémentaires.
Étapes suivantes
- Déployer un modèle tabulaire AutoML dans la console Google Cloud
- Déployer un modèle personnalisé dans la console Google Cloud
- Déployer un modèle personnalisé à l'aide de bibliothèques clientes
- Obtenir des prédictions par lot