Score de confiance de l'attribut de sécurité
Le contenu traité via l'API Vertex AI Gemini est évalué en fonction d'une liste d'attributs de sécurité, qui incluent les "catégories dangereuses" et les sujets pouvant être considérés comme sensibles. Ces attributs de sécurité sont indiqués dans le tableau suivant :
Définitions des attributs de sécurité
Attribut de sécurité | Définition |
---|---|
Incitation à la haine | Commentaires négatifs ou offensants ciblant l'identité et/ou les attributs protégés. |
Harcèlement | Commentaires malveillants, intimidants ou abusifs ciblant une autre personne. |
Contenu à caractère sexuel explicite | Contient des références à des actes sexuels ou à d'autres contenus obscènes. |
Contenu dangereux | Encourage ou facilite l'accès à des activités, produits et services dangereux. |
Probabilités d'attribut de sécurité
Chaque attribut de sécurité est associé à un score de confiance compris entre 0,0 et 1,0, arrondi à une décimale. Il reflète la probabilité que l'entrée ou la réponse appartienne à une catégorie donnée.
Le score de confiance présenté dans le tableau suivant est renvoyé avec un niveau de confiance :
Probabilité | Description |
---|---|
Négligeable | Le contenu présente une probabilité négligeable d'être non sécurisé. |
FAIBLE | Le contenu présente une probabilité faible d'être non sécurisé. |
MOYENNE | Le contenu présente une probabilité moyenne d'être non sécurisé |
ÉLEVÉ | Le contenu présente une probabilité élevée d'être non sécurisé |
Gravité des attributs de sécurité
Chacun des quatre attributs de sécurité se voit attribuer un score de sécurité (niveau de gravité) et un score de gravité compris entre 0,0 et 1,0, arrondis à une décimale. Les notes et les scores du tableau suivant reflètent la gravité prévue du contenu appartenant à une catégorie donnée :
Gravité | Description |
---|---|
Négligeable | Le niveau de gravité du contenu est prédit comme négligeable conformément aux règles de sécurité de Google. |
FAIBLE | Le niveau de gravité du contenu est prédit comme faible conformément aux règles de sécurité de Google. |
MOYENNE | Le niveau de gravité du contenu est prédit comme moyen conformément aux règles de sécurité de Google. |
ÉLEVÉ | Le niveau de gravité du contenu est prédit comme élevé conformément aux règles de sécurité de Google. |
Paramètres de sécurité
Les paramètres de sécurité font partie de la requête que vous envoyez au service d'API. Il peut être ajusté pour chaque requête que vous envoyez à l'API. Le tableau suivant décrit les paramètres de blocage que vous pouvez ajuster pour chaque catégorie. Par exemple, si vous définissez le paramètre de blocage sur Bloquer peu pour la catégorie de contenu dangereux, tous les éléments susceptibles d'être des contenus dangereux sont bloqués. Cependant, toute valeur plus faible est autorisée. Si ce champ n'est pas spécifié, le paramètre de blocage par défaut est Bloquer certains.
Seuil (Studio) | Seuil (API) | Seuil (description) |
---|---|---|
BLOCK_NONE (Limité) | Toujours afficher, quelle que soit la probabilité que le contenu soit non sécurisé. | |
Bloquer quelques éléments | BLOCK_ONLY_HIGH | Bloquer lorsque la probabilité d'un contenu non sécurisé est élevée. |
Bloquer une partie (par défaut) | BLOCK_MEDIUM_AND_ABOVE (par défaut) | Bloquer lorsque la probabilité d'un contenu non sécurisé est moyenne ou élevée. |
Bloquer la plupart des éléments | BLOCK_LOW_AND_ABOVE | Bloquer lorsque la probabilité d'un contenu non sécurisé est moyenne ou élevée. |
HARM_BLOCK_THRESHOLD_UNSPECIFIED | Le seuil n'est pas spécifié. Le blocage est effectué selon le seuil par défaut. |
Vous pouvez modifier ces paramètres pour chaque requête envoyée au service texte. Pour plus d'informations, consultez la documentation de référence de l'API HarmBlockThreshold.
Supprimer le blocage des réponses automatiques pour certains attributs de sécurité
Le paramètre de sécurité "BLOCK_NONE" supprime le blocage automatique des réponses (pour les attributs de sécurité décrits sous "Paramètres de sécurité") et vous permet de configurer vos propres consignes de sécurité avec les scores qui vous sont renvoyés. Pour accéder au paramètre "BLOCK_NONE", vous disposez de deux options :
(1) Vous pouvez demander l'inscription à la liste d'autorisation via le formulaire de liste d'autorisation de filtrage de sécurité Gemini.
(2) Vous pouvez basculer vers un type de compte avec paiement sur facture mensuelle à l'aide de la documentation de référence sur la facturation avec paiement sur facture mensuelle GCP.
Principales différences entre Gemini et les autres familles de modèles
Bien que les mêmes classificateurs de sécurité soient appliqués à Gemini et PaLM, le nombre d'attributs de sécurité renvoyés dans l'API peut varier selon les familles de modèles. La logique de blocage (seuil de confiance) est basée sur une évaluation rigoureuse de chaque modèle. Par conséquent, un paramètre de sécurité appliqué à un modèle peut ne pas correspondre parfaitement au comportement d'un paramètre de sécurité appliqué à un autre modèle. Si cela pose problème, nous vous recommandons de configurer votre propre logique de blocage avec des scores de gravité et des scores de confiance bruts, en appliquant les mêmes seuils de score à tous les modèles.
Configurer les seuils
Python
Pour savoir comment installer ou mettre à jour le SDK pour Python, consultez la page Installer le SDK Vertex AI pour Python. Pour en savoir plus, consultez la documentation de référence de l'API Python.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js décrites dans le guide de démarrage rapide de Vertex AI à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Node.js.
Pour vous authentifier auprès de Vertex AI, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java décrites dans le guide de démarrage rapide de Vertex AI à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Java.
Pour vous authentifier auprès de Vertex AI, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go décrites dans le guide de démarrage rapide de Vertex AI à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Go.
Pour vous authentifier auprès de Vertex AI, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
C#
Avant d'essayer cet exemple, suivez les instructions de configuration pour C# décrites dans le guide de démarrage rapide de Vertex AI à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI C#.
Pour vous authentifier auprès de Vertex AI, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
REST
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- LOCATION : région dans laquelle traiter la requête. Les options disponibles sont les suivantes :
Cliquer pour développer les régions disponibles
us-central1
us-west4
northamerica-northeast1
us-east4
us-west1
asia-northeast3
asia-southeast1
asia-northeast1
- PROJECT_ID : l'ID de votre projet.
- MODEL_ID : ID du modèle multimodal que vous souhaitez utiliser. Vous disposez des options suivantes :
gemini-1.0-pro
gemini-1.0-pro-vision
- ROLE : rôle dans une conversation associée au contenu. La spécification d'un rôle est requise, même dans les cas d'utilisation à un seul tour.
Les valeurs acceptées incluent les suivantes :
USER
: spécifie le contenu envoyé par vous.MODEL
: spécifie la réponse du modèle.
- TEXT : instructions textuelles à inclure dans l'invite.
- SAFETY_CATEGORY : catégorie de sécurité pour laquelle configurer un seuil. Les valeurs acceptées incluent les suivantes :
Cliquer pour développer les catégories de sécurité
HARM_CATEGORY_SEXUALLY_EXPLICIT
HARM_CATEGORY_HATE_SPEECH
HARM_CATEGORY_HARASSMENT
HARM_CATEGORY_DANGEROUS_CONTENT
- THRESHOLD : seuil de blocage des réponses susceptibles d'appartenir à la catégorie de sécurité spécifiée en fonction de la probabilité. Les valeurs acceptées incluent les suivantes :
Cliquer pour développer les seuils de blocage
BLOCK_NONE
BLOCK_ONLY_HIGH
BLOCK_MEDIUM_AND_ABOVE
(par défaut)BLOCK_LOW_AND_ABOVE
BLOCK_LOW_AND_ABOVE
bloque le plus, tandis queBLOCK_ONLY_HIGH
bloque le moins.
Méthode HTTP et URL :
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:streamGenerateContent
Corps JSON de la requête :
{ "contents": { "role": "ROLE", "parts": { "text": "TEXT" } }, "safety_settings": { "category": "SAFETY_CATEGORY", "threshold": "THRESHOLD" }, }
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 print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:streamGenerateContent"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$cred = gcloud auth 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_ID/locations/LOCATION/publishers/google/models/MODEL_ID:streamGenerateContent" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON semblable à la suivante.
Exemple de commande curl
LOCATION="us-central1"
MODEL_ID="gemini-1.0-pro"
PROJECT_ID="test-project"
curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://${LOCATION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${LOCATION}/publishers/google/models/${MODEL_ID}:streamGenerateContent -d \
$'{
"contents": {
"role": "user",
"parts": { "text": "Hello!" }
},
"safety_settings": [
{
"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
"threshold": "BLOCK_NONE"
},
{
"category": "HARM_CATEGORY_HATE_SPEECH",
"threshold": "BLOCK_LOW_AND_ABOVE"
},
{
"category": "HARM_CATEGORY_HARASSMENT",
"threshold": "BLOCK_MEDIUM_AND_ABOVE"
},
{
"category": "HARM_CATEGORY_DANGEROUS_CONTENT",
"threshold": "BLOCK_ONLY_HIGH"
}
]
}'
Console
Dans la section "Vertex AI" de la console Google Cloud, accédez à la page Vertex AI Studio.
Sous Créer une requête, cliquez sur l'un des boutons pour ouvrir la page de conception d'invite.
Cliquez sur Paramètres de sécurité.
La boîte de dialogue Paramètres de sécurité s'affiche.
Pour chaque attribut de sécurité, configurez la valeur de seuil souhaitée.
Cliquez sur Enregistrer.
Étapes suivantes
- En savoir plus sur l'IA responsable.
- En savoir plus sur la gouvernance des données.