Pour certains types de données, vous pouvez demander des prédictions en ligne (en temps réel) à partir de modèles AutoML après leur création et leur déploiement sur un point de terminaison. Une prédiction en ligne est une requête synchrone plutôt qu'une prédiction par lot, qui est une requête asynchrone.
Utilisez les prédictions en ligne lorsque vous effectuez des requêtes en réponse à une entrée d'une application ou dans d'autres situations nécessitant une inférence rapide.
Pour effectuer une prédiction en ligne, envoyez un ou plusieurs éléments de test à un modèle pour analyse, et ce modèle renvoie des résultats basés sur l'objectif de votre modèle. Pour plus d'informations sur les résultats de prédiction, consultez la page Interpréter les résultats des modèles AutoML.
Prédictions en ligne avec la console Google Cloud
Utilisez la console Google Cloud pour demander une prédiction en ligne. Votre modèle doit être déployé sur un point de terminaison.
Accédez à la page Modèles de Google Cloud Console, dans la section Vertex AI.
Dans la liste des modèles, cliquez sur le nom du modèle à partir duquel demander les prédictions.
Sélectionnez l'onglet Déployer et tester.
Dans la section Tester votre modèle, ajoutez des éléments de test pour demander une prédiction.
La méthode et l'entrée d'une prédiction en ligne dépendent de l'objectif de votre modèle. Par exemple, pour les modèles AutoML d'objectifs de texte, vous devez saisir du contenu dans un champ de texte, puis cliquer sur Prédire. Les modèles AutoML pour les objectifs d'images nécessitent l'importation d'une image pour demander une prédiction. Pour les modèles tabulaires, les données de prédiction de base sont renseignées automatiquement, ou vous pouvez saisir vos propres données de prédiction, puis cliquer sur Prédiction.
Pour plus d'informations sur l'importance des caractéristiques locales pour les modèles tabulaires, consultez la section Obtenir des explications.
Une fois la prédiction terminée, Vertex AI renvoie les résultats dans la console.
Prédictions en ligne avec l'API
Utilisez l'API Vertex AI pour demander une prédiction en ligne. Votre modèle doit être déployé sur un point de terminaison.
Image
Les objectifs de type de données d'image incluent la classification et la détection d'objets.
Prédiction par modèle Edge : lorsque vous utilisez des modèles Edge d'images AutoML pour la prédiction, vous devez convertir tout fichier de prédiction non-JPEG en fichier-JPEG avant d'envoyer la requête de prédiction. Pour obtenir un exemple de fonction de prétraitement Python, consultez le dépôt client Python pour le dépôt de l'API AutoML de Google Cloud.
Classification
gcloud
Créez un fichier nommé
request.json
avec le contenu suivant :{ "instances": [{ "content": "CONTENT" }], "parameters": { "confidenceThreshold": THRESHOLD_VALUE, "maxPredictions": MAX_PREDICTIONS } }
Remplacez l'élément suivant :
- CONTENT : contenu de l'image encodée en base64.
- THRESHOLD_VALUE (facultatif) : le modèle ne renvoie que les prédictions dont le score de confiance est au moins égal à cette valeur.
- MAX_PREDICTIONS (facultatif) : le modèle renvoie jusqu'à ce nombre de prédictions en commençant par les prédictions présentant les scores de confiance les plus élevés.
Exécutez la commande suivante :
gcloud ai endpoints predict ENDPOINT_ID \ --region=LOCATION \ --json-request=request.json
Remplacez l'élément suivant :
- ENDPOINT_ID : ID du point de terminaison.
- LOCATION : région dans laquelle vous utilisez l'IA Vertex.
API REST et ligne de commande
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- LOCATION : région où se trouve le point de terminaison. Exemple :
us-central1
. - PROJECT : ID de votre projet
- ENDPOINT_ID : ID du point de terminaison.
- CONTENT : contenu de l'image encodée en base64.
- THRESHOLD_VALUE (facultatif) : le modèle ne renvoie que les prédictions dont le score de confiance est au moins égal à cette valeur.
- MAX_PREDICTIONS (facultatif) : le modèle renvoie jusqu'à ce nombre de prédictions en commençant par les prédictions présentant les scores de confiance les plus élevés.
Méthode HTTP et URL :
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/endpoints/ENDPOINT_ID:predict
Corps JSON de la requête :
{ "instances": [{ "content": "CONTENT" }], "parameters": { "confidenceThreshold": THRESHOLD_VALUE, "maxPredictions": MAX_PREDICTIONS } }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/endpoints/ENDPOINT_ID:predict"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$cred = gcloud auth application-default 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/locations/LOCATION/endpoints/ENDPOINT_ID:predict" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "predictions": [ { "confidences": [ 0.92629629373550415 ], "ids": [ "354376995678715904" ], "displayNames": [ "sunflower" ] } ], "deployedModelId": "2119225099654529024" }
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Vertex AI, consultez Bibliothèques clientes Vertex AI. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Java.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Vertex AI, consultez Bibliothèques clientes Vertex AI. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Node.js.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Vertex AI, consultez Bibliothèques clientes Vertex AI. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Python.
Détection d'objets
gcloud
Créez un fichier nommé
request.json
avec le contenu suivant :{ "instances": [{ "content": "CONTENT" }], "parameters": { "confidenceThreshold": THRESHOLD_VALUE, "maxPredictions": MAX_PREDICTIONS } }
Remplacez l'élément suivant :
- CONTENT : contenu de l'image encodée en base64.
- THRESHOLD_VALUE (facultatif) : le modèle ne renvoie que les prédictions dont le score de confiance est au moins égal à cette valeur.
- MAX_PREDICTIONS (facultatif) : le modèle renvoie jusqu'à ce nombre de prédictions en commençant par les prédictions présentant les scores de confiance les plus élevés.
Exécutez la commande suivante :
gcloud ai endpoints predict ENDPOINT_ID \ --region=LOCATION \ --json-request=request.json
Remplacez l'élément suivant :
- ENDPOINT_ID : ID du point de terminaison.
- LOCATION : région dans laquelle vous utilisez l'IA Vertex.
API REST et ligne de commande
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- LOCATION : région où se trouve le point de terminaison. Exemple :
us-central1
. - PROJECT : ID de votre projet
- ENDPOINT_ID : ID du point de terminaison.
- CONTENT : contenu de l'image encodée en base64.
- THRESHOLD_VALUE (facultatif) : le modèle ne renvoie que les prédictions dont le score de confiance est au moins égal à cette valeur.
- MAX_PREDICTIONS (facultatif) : le modèle renvoie jusqu'à ce nombre de prédictions en commençant par les prédictions présentant les scores de confiance les plus élevés.
Méthode HTTP et URL :
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/endpoints/ENDPOINT_ID:predict
Corps JSON de la requête :
{ "instances": [{ "content": "CONTENT" }], "parameters": { "confidenceThreshold": THRESHOLD_VALUE, "maxPredictions": MAX_PREDICTIONS } }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/endpoints/ENDPOINT_ID:predict"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$cred = gcloud auth application-default 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/locations/LOCATION/endpoints/ENDPOINT_ID:predict" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "predictions": [ { "confidences": [ 0.975873291, 0.972160876, 0.879488528, 0.866532683, 0.686478078 ], "displayNames": [ "Salad", "Salad", "Tomato", "Tomato", "Salad" ], "ids": [ "7517774415476555776", "7517774415476555776", "2906088397049167872", "2906088397049167872", "7517774415476555776" ], "bboxes": [ [ 0.0869686604, 0.977020741, 0.395135701, 1 ], [ 0, 0.488701463, 0.00157663226, 0.512249 ], [ 0.361617863, 0.509664357, 0.772928834, 0.914706349 ], [ 0.310678929, 0.45781514, 0.565507233, 0.711237729 ], [ 0.584359646, 1, 0.00116168708, 0.130817384 ] ] } ], "deployedModelId": "3860570043075002368" }
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Vertex AI, consultez Bibliothèques clientes Vertex AI. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Java.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Vertex AI, consultez Bibliothèques clientes Vertex AI. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Node.js.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Vertex AI, consultez Bibliothèques clientes Vertex AI. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Python.
Tabulaire
Les objectifs tabulaires incluent la classification et la régression.
Classification
gcloud
Créez un fichier nommé
request.json
avec le contenu suivant :{ "instances": [ { PREDICTION_DATA_ROW } ] }
Remplacez l'élément suivant :
-
PREDICTION_DATA_ROW : objet JSON avec des clés comme noms de caractéristiques et des valeurs en tant que valeurs de caractéristiques correspondantes. Par exemple, pour un ensemble de données comportant trois caractéristiques (un nombre, un tableau de chaînes et une catégorie) la ligne de données peut ressembler à l'exemple de requête suivant :
"length":3.6, "material":"cotton", "tag_array": ["abc","def"]
Vous devez fournir une valeur pour chaque caractéristique incluse dans l'entraînement. Le format des données utilisées pour la prédiction doit correspondre à celui utilisé pour l'entraînement. Pour en savoir plus, consultez la section Format de données pour les prédictions.
-
Exécutez la commande suivante :
gcloud ai endpoints predict ENDPOINT_ID \ --region=LOCATION \ --json-request=request.json
Remplacez l'élément suivant :
- ENDPOINT_ID : ID du point de terminaison.
- LOCATION : région dans laquelle vous utilisez l'IA Vertex.
API REST et ligne de commande
Vous utilisez la méthode endpoints.predict pour demander une prédiction en ligne.
L'exemple suivant montre une requête de prédiction en ligne pour un modèle de classification tabulaire sans attribution de caractéristiques locales. Si vous souhaitez renvoyer les attributions de caractéristiques locales, consultez la section Obtenir des explications.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
-
LOCATION : région où se trouve le point de terminaison. Exemple :
us-central1
- PROJECT : ID de votre projet
- ENDPOINT_ID : ID du point de terminaison.
-
PREDICTION_DATA_ROW : objet JSON avec des clés comme noms de caractéristiques et des valeurs en tant que valeurs de caractéristiques correspondantes. Par exemple, pour un ensemble de données comportant trois caractéristiques (un nombre, un tableau de chaînes et une catégorie) la ligne de données peut ressembler à l'exemple de requête suivant :
"length":3.6, "material":"cotton", "tag_array": ["abc","def"]
Vous devez fournir une valeur pour chaque caractéristique incluse dans l'entraînement. Le format des données utilisées pour la prédiction doit correspondre à celui utilisé pour l'entraînement. Pour en savoir plus, consultez la section Format de données pour les prédictions.
-
DEPLOYED_MODEL_ID : sortie générée par la méthode
predict
et acceptée en tant qu'entrée par la méthodeexplain
. ID du modèle utilisé pour générer la prédiction. Si vous devez demander des explications pour une prédiction précédemment demandée et que vous avez déployé plusieurs modèles, vous pouvez utiliser cet ID pour vous assurer que les explications sont renvoyées pour le modèle qui a fourni la prédiction précédente.
Méthode HTTP et URL :
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/endpoints/ENDPOINT_ID:predict
Corps JSON de la requête :
{ "instances": [ { PREDICTION_DATA_ROW } ] }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/endpoints/ENDPOINT_ID:predict"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$cred = gcloud auth application-default 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/locations/LOCATION/endpoints/ENDPOINT_ID:predict" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "predictions": [ { "scores": [ 0.96771615743637085, 0.032283786684274673 ], "classes": [ "0", "1" ] } ] "deployedModelId": "2429510197" }
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Vertex AI, consultez Bibliothèques clientes Vertex AI. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Java.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Vertex AI, consultez Bibliothèques clientes Vertex AI. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Node.js.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Vertex AI, consultez Bibliothèques clientes Vertex AI. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Python.
Prévision
Les modèles de prévision ne sont pas compatibles avec les prédictions en ligne. Utilisez plutôt les prédictions par lot.Régression
gcloud
Créez un fichier nommé
request.json
avec le contenu suivant :{ "instances": [ { PREDICTION_DATA_ROW } ] }
Remplacez l'élément suivant :
-
PREDICTION_DATA_ROW : objet JSON avec des clés comme noms de caractéristiques et des valeurs en tant que valeurs de caractéristiques correspondantes. Par exemple, pour un ensemble de données comportant trois caractéristiques (un nombre, un tableau de nombres et une catégorie) la ligne de données peut ressembler à l'exemple de requête suivant :
"age":3.6, "sq_ft":5392, "code": "90331"
Vous devez fournir une valeur pour chaque caractéristique incluse dans l'entraînement. Le format des données utilisées pour la prédiction doit correspondre à celui utilisé pour l'entraînement. Pour en savoir plus, consultez la section Format de données pour les prédictions.
-
Exécutez la commande suivante :
gcloud ai endpoints predict ENDPOINT_ID \ --region=LOCATION \ --json-request=request.json
Remplacez l'élément suivant :
- ENDPOINT_ID : ID du point de terminaison.
- LOCATION : région dans laquelle vous utilisez l'IA Vertex.
API REST et ligne de commande
Vous utilisez la méthode endpoints.predict pour demander une prédiction en ligne.
L'exemple suivant montre une requête de prédiction en ligne pour un modèle de régression tabulaire sans attribution de caractéristiques locales. Si vous souhaitez renvoyer les attributions de caractéristiques locales, consultez la section Obtenir des explications.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
-
LOCATION : région où se trouve le point de terminaison. Exemple :
us-central1
- PROJECT : ID de votre projet
- ENDPOINT_ID : ID du point de terminaison.
-
PREDICTION_DATA_ROW : objet JSON avec des clés comme noms de caractéristiques et des valeurs en tant que valeurs de caractéristiques correspondantes. Par exemple, pour un ensemble de données comportant trois caractéristiques (un nombre, un tableau de nombres et une catégorie) la ligne de données peut ressembler à l'exemple de requête suivant :
"age":3.6, "sq_ft":5392, "code": "90331"
Vous devez fournir une valeur pour chaque caractéristique incluse dans l'entraînement. Le format des données utilisées pour la prédiction doit correspondre à celui utilisé pour l'entraînement. Pour en savoir plus, consultez la section Format de données pour les prédictions.
-
DEPLOYED_MODEL_ID : sortie générée par la méthode
predict
et acceptée en tant qu'entrée par la méthodeexplain
. ID du modèle utilisé pour générer la prédiction. Si vous devez demander des explications pour une prédiction précédemment demandée et que vous avez déployé plusieurs modèles, vous pouvez utiliser cet ID pour vous assurer que les explications sont renvoyées pour le modèle qui a fourni la prédiction précédente.
Méthode HTTP et URL :
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/endpoints/ENDPOINT_ID:predict
Corps JSON de la requête :
{ "instances": [ { PREDICTION_DATA_ROW } ] }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/endpoints/ENDPOINT_ID:predict"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$cred = gcloud auth application-default 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/locations/LOCATION/endpoints/ENDPOINT_ID:predict" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :