Cette page s'adresse aux développeurs d'applications des groupes d'opérateurs d'applications chargés de configurer leurs environnements d'application et de développement pour activer les fonctionnalités d'IA. Pour en savoir plus, consultez la documentation sur les audiences pour GDC en mode air-gapped.
Avant de commencer
Vous devez configurer votre projet pour Vertex AI. Pour en savoir plus, consultez Configurer un projet pour Vertex AI.
- Veillez à mettre à jour votre magasin de confiance local avant de configurer l'authentification dans votre environnement de développement.
S'authentifier auprès des services Vertex AI
Les interactions avec les services Vertex AI se font à l'aide de jetons d'authentification. Les jetons sont des objets numériques qui valident votre identité et votre autorisation une fois que vous avez fourni des identifiants valides. Le jeton contient des informations spécifiques sur votre compte et les autorisations dont il dispose pour accéder aux services et ressources et les utiliser.
Il existe deux façons de configurer l'authentification :
S'authentifier avec votre compte utilisateur
Les instructions suivantes vous expliquent comment obtenir un jeton d'authentification pour votre compte utilisateur :
Notez le point de terminaison de l'API que vous souhaitez utiliser.
Accédez au service Vertex AI ou au modèle d'IA générative que vous souhaitez utiliser en attribuant à votre compte utilisateur le rôle correspondant listé dans Préparer les autorisations IAM.
Connectez-vous à Distributed Cloud avec le compte utilisateur que vous devez utiliser pour interagir avec l'API :
gdcloud auth login
Obtenez le jeton d'authentification :
gdcloud auth print-identity-token --audiences=https://ENDPOINT
Remplacez
ENDPOINT
par le point de terminaison de l'API que vous utilisez pour votre organisation. Pour en savoir plus, consultez l'état et les points de terminaison des services.Selon l'utilisation prévue du jeton d'authentification, vous devrez peut-être inclure le port après le point de terminaison du service dans le chemin d'accès aux audiences, comme suit :
- Si vous utilisez une bibliothèque cliente pour votre requête, vous devez inclure le port
:443
après le point de terminaison du service dans le chemin d'accès aux audiences. Par conséquent, le chemin--audiences
dans la commande doit êtrehttps://ENDPOINT:443
. - Si vous utilisez gRPC,
curl
ou des appels REST programmatiques pour votre demande, n'incluez pas le port. Par conséquent, le chemin--audiences
dans la commande doit êtrehttps://ENDPOINT
.
Le résultat affiche le jeton d'authentification. Ajoutez le jeton à l'en-tête des requêtes de ligne de commande que vous effectuez, comme dans l'exemple suivant :
-H "Authorization: Bearer TOKEN"
Remplacez
TOKEN
par la valeur du jeton d'authentification affiché dans la sortie.- Si vous utilisez une bibliothèque cliente pour votre requête, vous devez inclure le port
S'authentifier avec votre compte de service
Les instructions suivantes vous expliquent comment obtenir un jeton d'authentification pour votre compte de service :
Notez le point de terminaison de l'API que vous souhaitez utiliser.
Configurez le compte de service que vous souhaitez utiliser pour accéder au service Vertex AI ou au modèle d'IA générative.
Attribuez au compte de service le rôle correspondant indiqué dans Préparer les autorisations IAM pour lui permettre d'accéder au service ou au modèle que vous souhaitez utiliser.
Obtenez les paires de clés de compte de service de votre compte de service.
Définissez la variable d'environnement suivante :
export GOOGLE_APPLICATION_CREDENTIALS=PATH_TO_SERVICE_KEY
Remplacez
PATH_TO_SERVICE_KEY
par le chemin d'accès au fichier JSON contenant les paires de clés de votre compte de service.Installez la bibliothèque cliente
google-auth
:pip install google-auth
Ajoutez le code suivant à un script Python :
import os import google.auth from google.auth.transport import requests import requests as reqs os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "PATH_TO_SERVICE_KEY" os.environ["GRPC_DEFAULT_SSL_ROOTS_FILE_PATH"] = "CERT_NAME" # If you use a client library for your request, # you must include port :443 after the service endpoint # in the audience path. audience = "https://ENDPOINT" creds, project_id = google.auth.default() print(project_id) creds = creds.with_gdch_audience(audience) def test_get_token(): sesh = reqs.Session() req = requests.Request(session=sesh) creds.refresh(req) print(creds.token) if __name__=="__main__": test_get_token()
Remplacez les éléments suivants :
PATH_TO_SERVICE_KEY
: chemin d'accès au fichier JSON contenant les paires de clés de votre compte de service.CERT_NAME
: nom du fichier de certificat de l'autorité de certification, tel queorg-1-trust-bundle-ca.cert
. Vous n'avez besoin de cette valeur que si vous êtes dans un environnement de développement. Sinon, omettez-le.ENDPOINT
: point de terminaison de l'API que vous utilisez pour votre organisation. Pour en savoir plus, consultez l'état et les points de terminaison des services. Selon l'utilisation prévue du jeton d'authentification, vous devrez peut-être inclure le port après le point de terminaison du service dans le chemin d'accès à l'audience, comme suit :- Si vous utilisez une bibliothèque cliente pour votre requête, vous devez inclure le port
:443
après le point de terminaison du service dans le chemin d'accès à l'audience. Par conséquent, le chemin d'accèsaudience
dans le script doit être"https://ENDPOINT:443"
. - Si vous utilisez gRPC,
curl
ou des appels REST programmatiques pour votre demande, n'incluez pas le port. Par conséquent, le chemin d'accèsaudience
dans le script doit être"https://ENDPOINT"
.
- Si vous utilisez une bibliothèque cliente pour votre requête, vous devez inclure le port
Enregistrez le script Python.
Exécutez le script Python pour récupérer le jeton :
python SCRIPT_NAME
Remplacez
SCRIPT_NAME
par le nom que vous avez donné à votre script Python, par exempletoken.py
.Le résultat affiche le jeton d'authentification. Ajoutez le jeton à l'en-tête des requêtes de ligne de commande que vous effectuez, comme dans l'exemple suivant :
-H "Authorization: Bearer TOKEN"
Remplacez
TOKEN
par la valeur du jeton d'authentification affiché dans la sortie.