Créer et gérer des points de terminaison

Cette page explique comment créer et gérer des points de terminaison d'API Gemini sur Google Distributed Cloud connecté.

Prérequis

Cette section décrit les étapes ponctuelles à suivre avant de pouvoir déployer Gemini sur les points de terminaison d'API connectés à GDC. Suivez les étapes sur la machine de mise en service.

Vous devez suivre les étapes de cette section à l'aide d'un compte d'administrateur informatique disposant du rôle Lecteur de zone de conteneurs Edge. Une fois les étapes de cette section effectuées, fournissez les informations recueillies, y compris le certificat CA et l'adresse IP du serveur DNS, à l'administrateur du projet Google Cloud qui déploie le point de terminaison de l'API comme décrit dans Déployer un point de terminaison d'API Gemini sur GDC connecté.

Terminer la mise en service du matériel

Avant de suivre les étapes décrites sur cette page, vous devez :

  • Déployez le matériel certifié par Google comme décrit dans Conditions d'installation.

  • Collaborez avec votre représentant Google pour créer les clusters Distributed Cloud connectés requis.

Attribuer les rôles requis

Vous devez configurer les rôles requis suivants :

Obtenir des informations sur la zone Distributed Cloud connectée cible

Pour obtenir le nom de votre zone connectée Distributed Cloud cible, procédez comme suit :

  1. Obtenez le nom de l'ID d'organisation Google Cloud cible :

    gcloud organizations list
    
  2. Répertoriez les zones Distributed Cloud connectées dans votre organisation Google Cloud  :

    gcloud alpha edge-cloud zones list \
       --organization ORGANIZATION_ID \
       --location REGION
    

    Remplacez les éléments suivants :

    • ORGANIZATION_ID : ID de l'organisation Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone connectée Distributed Cloud cible a été créée. Pendant la version Preview publique, la seule région prise en charge est us-west2.
  3. Obtenez des informations détaillées sur la zone cible :

    gcloud alpha edge-cloud zones describe ZONE \
       --organization ORGANIZATION_ID \
       --location REGION
    

    Remplacez les éléments suivants :

    • ZONE : zone Distributed Cloud connectée cible.
    • ORGANIZATION_ID : ID de l'organisation Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone connectée Distributed Cloud cible a été créée. Pendant la version Preview publique, la seule région prise en charge est us-west2.

Obtenir des informations sur les machines certifiées dans votre zone Distributed Cloud connectée

Pour obtenir les noms des machines certifiées cibles dans votre zone Distributed Cloud connectée, procédez comme suit :

  1. Répertoriez les machines Distributed Cloud connectées dans la zone Distributed Cloud connectée cible, comme décrit dans Lister les machines dans une zone.

  2. Obtenez des informations détaillées sur la machine cible, comme décrit dans Obtenir des informations sur une machine.

Activer les services locaux des API AI Platform et Vertex AI

Pour suivre les étapes de cette section, utilisez un compte d'administrateur informatique doté du rôle Administrateur de projet zonal Edge Container.

  1. Activez le projet Google Cloud cible dans votre zone connectée Distributed Cloud cible :

    gcloud alpha edge-cloud projects enable PROJECT_ID \
       --organization ORGANIZATION_ID \
       --location REGION \
       --zone ZONE
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet Google Cloud cible.
    • ORGANIZATION_ID : ID de l'organisation Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
    • ZONE : zone Distributed Cloud connectée cible.
  2. Activez le service AI Platform sur le projet cible Google Cloud  :

    gcloud services enable aiplatform.googleapis.com --project PROJECT_ID
    

    Remplacez PROJECT_ID par l'ID du projet cible Google Cloud .

  3. Activez le service d'API Vertex AI dans la zone connectée Distributed Cloud :

    gcloud alpha edge-cloud services enable aiplatform.googleapis.com --project PROJECT_ID \
       --location REGION \
       --zone ZONE
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
    • ZONE : zone Distributed Cloud connectée cible.

Configurer le point de terminaison pour la résolution DNS

  1. Obtenez l'adresse DNS gérée, le domaine de premier niveau (TLD) et le certificat de l'autorité de certification (CA) pour la zone connectée Distributed Cloud cible.

    gcloud alpha edge-cloud zones describe ZONE \
      --organization ORGANIZATION_ID \
      --location REGION \
      --format="value(certificateAuthorities)" \
      > CA_CERTIFICATE_FILE
    

    Remplacez les éléments suivants :

    • ORGANIZATION_ID : ID de l'organisation Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
    • ZONE : zone Distributed Cloud connectée cible.
    • CA_CERTIFICATE_FILE : fichier dans lequel la sortie de la charge utile du certificat générée par la commande est enregistrée. Vous utiliserez ce fichier ultérieurement pour générer la clé du compte de service.

    Un résultat semblable à ce qui suit est stocké dans le fichier :

    -----BEGIN CERTIFICATE-----
    MIIDATCCAemgAwIBAgIRAOsIG15loHwPBpjQe9FZYUAwDQYJKoZIhvcNAQELBQAw
    GjEYMBYGA1UEAxMPZ2RjZS1jbHVzdGVyLWNhMB4XDTI1MDcyOTEyMTAwNloXDTQ5
    MDcyMzEyMTAwNlowGjEYMBYGA1UEAxMPZ2RjZS1jbHVzdGVyLWNhMIIBIjANBgkq
    hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3YdoASubyzHdgZ0vIU5g1dxdFRT1T4wc
    o9FaRXftSTDfiNVNKj/vC+De9EZokpyLZkdZNep6p0TLJAsPZYq+yiTCiaJ6Ihwy
    3LBn8j2PessSIte2LUhkft1yCQqfkgpYfKcjM3IauIXETS961m0uJb4sntgLJ4nM
    Scb5vpW1f70D1V27bqnEsE7+rbxzeFTosHC+DGBcLqIE0ptdionm/4xoltH7yv2O
    qKfcc/46TyPwGRzxifEdNzjKZ1kRdTThESfW+L7TQNv6VF5TC4FPksYX/ID/X7Fz
    G9BRey0mikvc4J7qQIeyMRlpIKqRh/1FCdRDC9vVEQipT2Ls0MwwTwIDAQABo0Iw
    QDAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUmES2
    pyMLOnnsKug8amFmenOaTr8wDQYJKoZIhvcNAQELBQADggEBADn71zo7cNFZ0kQE
    C2lS6b0DLz4Nd1yCz5fGDvxzcTRdOT60wyq/TAx1YlYse33cGk/cQ7RkVsM56UX1
    T8RMvi09UcEQG3wFrYuU62ZjXF1a3RrOnHxyvVdyvbUYAO5gvzBQrj4tMZYX9kL3
    6H/9FwXuHVyqWAm0xpWvZfszwJjY4C1VxoDwmRiZPYzTrWI6/rY0QmORgcZXLnPL
    OVufbAX30aRGdTRnVXxE0fKmXwzbtbSHilU5hJT7EQWMvV5hJfyNqdXG0gbrhrsk
    sB0yRjk5PHQd9pOMcXcYIgfNnUEcQl4qeSll3g5cZ+cRrcTO1USFLRo8dcbQpJ6Y
    6ykzvKs=
    -----END CERTIFICATE-----
    createTime: '2025-08-25T20:46:50.269384028Z'
    dnsServers:
    - ipAddress: DNS_SERVER_ADDRESS
    tld: TOP_LEVEL_DOMAIN
    name: organizations/ORGANIZATION_ID/locations/REGION/zones/ZONE
    state: STATE_RUNNING
    
  2. Créez la configuration DNS pour le point de terminaison comme suit, en utilisant l'adresse IP du serveur DNS et le nom de domaine de premier niveau (TLD) obtenus à l'étape précédente. Vous devez exécuter cette commande à partir d'une machine qui se trouve sur le même réseau local que la machine certifiée pour l'API Gemini on GDC connected.

    mkdir /etc/systemd/resolved.conf.d
    echo '[Resolve]
    DNS=DNS_SERVER_ADDRESS
    Domains=~TOP_LEVEL_DOMAIN' > /etc/systemd/resolved.conf.d/dns.conf
    sudo systemctl restart systemd-resolved
    

    Remplacez les éléments suivants :

    • DNS_SERVER_ADDRESS : adresse IP de votre serveur DNS.
    • TOP_LEVEL_DOMAIN : domaine de premier niveau du point de terminaison.

Déployer un point de terminaison de l'API Gemini on GDC connected

Pour déployer un point de terminaison d'API Gemini on GDC connected, procédez comme suit à l'aide d'un compte administrateur de projet Google Cloud  :

  1. Créez le point de terminaison :

    gcloud beta ai endpoints create \
       --project=PROJECT_ID \
       --region=REGION \
       --gdc-zone=ZONE \
       --display-name=ENDPOINT_NAME \
       --endpoint-id=ENDPOINT_ID
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
    • ZONE : zone Distributed Cloud connectée cible.
    • ENDPOINT_NAME : nom explicite pour ce point de terminaison.
    • ENDPOINT_ID : (facultatif) identifiant unique de ce point de terminaison. Si vous l'omettez, un identifiant aléatoire est généré.
  2. Déployez le modèle :

    gcloud beta ai endpoints deploy-model ENDPOINT_ID \
      --display-name=ENDPOINT_NAME \
      --model=MODEL_PUBLIC_ID \
      --region=REGION
    

    Remplacez les éléments suivants :

    • ENDPOINT_ID : ID du point de terminaison cible.
    • ENDPOINT_NAME : nom du point de terminaison cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
    • MODEL_PUBLIC_ID : ID public du modèle. Pour obtenir la liste des modèles compatibles, consultez Modèles compatibles.
  3. Répertoriez les points de terminaison déployés :

    gcloud beta ai endpoints list \
      --project=PROJECT_ID \
      --region=REGION
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.

    Notez l'ID du point de terminaison cible.

  4. Obtenez l'adresse du point de terminaison :

    gcloud beta ai endpoints describe ENDPOINT_ID \
      --project=PROJECT_ID \
      --region=REGION
    

    Remplacez les éléments suivants :

    • ENDPOINT_ID : ID du point de terminaison cible.
    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
  5. Créez le compte de service pour le point de terminaison dans la zone connectée Distributed Cloud cible :

    gcloud alpha edge-cloud service-accounts create SERVICE_ACCOUNT \
      --project PROJECT_ID \
      --location REGION \
      --zone ZONE
    

    Remplacez les éléments suivants :

    • SERVICE_ACCOUNT : nom explicite qui identifie de manière unique ce compte de service. Ce nom ne doit contenir que des lettres minuscules, des chiffres, des tirets ("-") ou des points ("."), et doit commencer et se terminer par un caractère alphanumérique. Les lettres majuscules ne sont pas autorisées.
    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
    • ZONE : zone Distributed Cloud connectée cible.
  6. Obtenez la stratégie IAM (Identity and Access Management) pour la zone connectée Distributed Cloud cible :

    gcloud alpha edge-cloud zones get-iam-policy ZONE \
      --project PROJECT_ID \
      --location REGION
    

    Remplacez les éléments suivants :

    • ZONE : zone Distributed Cloud connectée cible.
    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.

    Copiez la charge utile de la règle générée par cette commande et enregistrez-la dans un fichier (par exemple, policy.json ou policy.yaml) pour la modifier à l'étape suivante.

  7. Attribuez le rôle Développeur Gemini AI Platform (roles/aiplatform.geminiDeveloper) au compte de service :

    gcloud alpha edge-cloud zones set-iam-policy POLICY_FILE \
      --project PROJECT_ID \
      --location REGION \
      --zone ZONE
    

    Remplacez les éléments suivants :

    • POLICY_FILE : fichier JSON ou YAML contenant la stratégie d'attribution des rôles.
    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
    • ZONE : zone Distributed Cloud connectée cible.

    Voici un exemple de règle au format JSON :

    {
      "bindings": [
         {
            "role": "roles/aiplatform.geminiDeveloper",
            "members": [
               {
                  "serviceAccount": "projects/PROJECT_ID/locations/REGION/serviceAccounts/SERVICE_ACCOUNT"
               }
            ]
         }
      ],
      "etag": ""
    }
    

    Voici un exemple de stratégie au format YAML :

    bindings:
    - role: roles/aiplatform.geminiDeveloper
      members:
      - serviceAccount: projects/PROJECT_ID/locations/REGION/serviceAccounts/SERVICE_ACCOUNT
    etag: ""
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
    • SERVICE_ACCOUNT : nom explicite qui identifie de manière unique ce compte de service.
  8. Générez une clé pour le compte de service :

    gcloud alpha edge-cloud service-accounts keys create SA_KEY_FILE \
      --service-account SERVICE_ACCOUNT \
      --project PROJECT_ID \
      --location REGION \
      --ca-cert-path CA_CERTIFICATE_FILE
    

    Remplacez les éléments suivants :

    • SA_KEY_FILE : fichier dans lequel stocker la clé de compte de service générée.
    • SERVICE_ACCOUNT : compte de service que vous avez créé précédemment dans ce guide.
    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
    • CA_CERTIFICATE_FILE : fichier de certificat CA que vous avez créé précédemment.
  9. Obtenez l'URL complète du point de terminaison :

    gcloud beta ai endpoints describe ENDPOINT_ID \
      --project=PROJECT_ID \
      --region=REGION
    

    Remplacez les éléments suivants :

    • ENDPOINT_ID : identifiant du point de terminaison cible.
    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
  10. Imprimez le jeton d'identité pour le compte de service. Vous devez exécuter cette commande à partir d'une machine qui se trouve sur le même réseau local que la machine certifiée pour l'API Gemini on GDC connected.

    gcloud alpha edge-cloud auth print-identity-token \
      --cred-file=SA_KEY_FILE \
      --audience=ENDPOINT_URL
    

    Remplacez les éléments suivants :

    • SA_KEY_FILE : fichier de clé de compte de service que vous avez créé précédemment.
    • ENDPOINT_URL : URL complète du point de terminaison, y compris le suffixe TLD.

Lister les points de terminaison de l'API Gemini on GDC connected déployés

Pour lister les points de terminaison de l'API Gemini on GDC connected que vous avez déployés, procédez comme suit :

gcloud beta ai endpoints list \
    --project=PROJECT_ID \
    --region=REGION \
    --gdc-zone=ZONE

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet Google Cloud cible.
  • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
  • ZONE : zone Distributed Cloud connectée cible.

Obtenir des informations sur un point de terminaison de l'API Gemini on GDC connected

Pour obtenir des informations sur un point de terminaison de l'API Gemini on GDC connected déployé, procédez comme suit :

gcloud beta ai endpoints describe ENDPOINT_ID \
    --project=PROJECT_ID \
    --region=REGION
   

Remplacez les éléments suivants :

  • ENDPOINT_ID : ID du point de terminaison cible.
  • PROJECT_ID : ID du projet Google Cloud cible.
  • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.

Interagir avec un point de terminaison de l'API Gemini on Google Distributed Cloud connected

Votre point de terminaison de l'API Gemini on GDC connected est compatible avec l'interaction via les API ChatCompletions et ListAvailableModels. Utilisez ces API pour interagir de manière programmatique avec votre point de terminaison.

Voici un exemple de requête via l'API ChatCompletions. Le jeton du porteur généré dans cette requête est valide pendant 12 heures.

  1. Définissez les variables suivantes dans votre environnement shell :

    MODEL_PROMPT_ID="MODEL_PROMPT_ID"
    USER_CONTENT="Who invented the light bulb?"
    PROJECT="PROJECT_ID"
    LOCATION="REGION"
    IG_FQDN="inference-gateway.vai.ZONE.google.private.goog"
    CRED_FILE="SA_KEY_FILE"
    API_ENDPOINT="https://${IG_FQDN}/v1/projects/${PROJECT}/locations/${LOCATION}/chat/completions"
    

    Remplacez les éléments suivants :

    • MODEL_NAME : nom du modèle cible.
    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
    • SA_KEY_FILE : fichier de clé de compte de service que vous avez créé précédemment.
  2. Créez la charge utile :

    REQUEST_BODY=$(cat <<EOF
    {
    "model": "${MODEL_PROMPT_ID}",
    "messages": [
       {
          "role": "system",
          "content": "Pizza for everyone!"
       },
       {
          "role": "user",
          "content": "${USER_CONTENT}"
       }
    ],
    "stream": false
    }
    EOF
    )
    
  3. Imprimez le jeton de support. Vous devez exécuter cette commande à partir d'une machine qui se trouve sur le même réseau local que la machine certifiée pour l'API Gemini on GDC connected.

     BEARER_TOKEN=$(gcloud alpha edge-cloud auth print-identity-token --cred-file="${CRED_FILE}" --audience="https://${IG_FQDN}")
     echo $BEARER_TOKEN
    
  4. Envoyez la requête au point de terminaison. Vous devez exécuter cette commande à partir d'une machine qui se trouve sur le même réseau local que la machine certifiée pour l'API Gemini on GDC connected :

    curl -k -X POST \
    "${API_ENDPOINT}" \
    -d "${REQUEST_BODY}" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer ${BEARER_TOKEN}" \
    -H "x-goog-user-project: projects/${PROJECT}"
    

Exemple de requête d'API ChatCompletions multimodale avec une charge utile d'image JPEG

Voici un exemple de charge utile de requête API ChatCompletions multimodale avec une image JPEG comme entrée :

  1. Créez la charge utile :

    BASE64_IMAGE=$(base64 -w 0 JPEG_FILE)
    REQUEST_BODY=$(cat <<EOF
    {
    "model": "${MODEL_PROMPT_ID}",
    "messages": [
       {
          "role": "user",
          "content": [
                {
                   "type": "text",
                   "text": "What is this image?"
                },
                {
                   "type": "image_url",
                   "image_url": {
                      "url": "data:image/jpeg;base64,${BASE64_IMAGE}"
                   }
                }
          ]
       }
    ]
    }
    EOF
    
    )
    
  2. Envoyez la requête au point de terminaison. Vous devez exécuter cette commande à partir d'une machine qui se trouve sur le même réseau local que la machine certifiée pour l'API Gemini on GDC connected.

    curl -k -X POST \
    "${API_ENDPOINT}" \
    -d "${REQUEST_BODY}" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer ${BEARER_TOKEN}" \
    -H "x-goog-user-project: projects/${PROJECT}"
    

Exemple de requête API ChatCompletions multimodale avec une charge utile de document PDF

Voici un exemple de charge utile de requête API ChatCompletions multimodale avec un document PDF en entrée :

  1. Créez la charge utile :

    BASE64_PDF=$(base64 -w 0 PDF_FILE)
    REQUEST_BODY=$(cat <<EOF
    {
    "model": "${MODEL_PROMPT_ID}",
    "messages": [
       {
          "role": "user",
          "content": [
                {
                   "type": "text",
                   "text": "Please summarize this document."
                },
                {
                   "type": "input_document",
                   "input_document": {
                      "data": "data:application/pdf;base64,${BASE64_PDF}",
                      "format": "pdf"
                   }
                }
          ]
       }
    ]
    }
    EOF
    
    )
    
  2. Envoyez la requête au point de terminaison. Vous devez exécuter cette commande à partir d'une machine qui se trouve sur le même réseau local que la machine certifiée pour l'API Gemini on GDC connected.

    curl -k -X POST \
    "${API_ENDPOINT}" \
    -d "${REQUEST_BODY}" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer ${BEARER_TOKEN}" \
    -H "x-goog-user-project: projects/${PROJECT}"
    

Exemple de requête API ChatCompletions multimodale avec une charge utile audio

Voici un exemple de charge utile de requête API ChatCompletions multimodale avec un fichier audio en entrée :

  1. Créez la charge utile :

    BASE64_AUDIO=$(base64 -w 0 AUDIO_FILE)
    REQUEST_BODY=$(cat <<EOF
    {
    "model": "${MODEL_PROMPT_ID}",
    "messages": [
       {
          "role": "user",
          "content": [
                {
                   "type": "text",
                   "text": "Transcribe this speech for me."
                },
                {
                   "type": "input_audio",
                   "input_audio": {
                      "data": "data:audio/mp3;base64,${BASE64_AUDIO}",
                      "format": "mp3"
                   }
                }
          ]
       }
    ]
    }
    EOF
    
    )
    
  2. Envoyez la requête au point de terminaison. Vous devez exécuter cette commande à partir d'une machine qui se trouve sur le même réseau local que la machine certifiée pour l'API Gemini on GDC connected.

    curl -k -X POST \
    "${API_ENDPOINT}" \
    -d "${REQUEST_BODY}" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer ${BEARER_TOKEN}" \
    -H "x-goog-user-project: projects/${PROJECT}"
    

Exemple de requête d'API ChatCompletions multimodale avec une charge utile vidéo

Voici un exemple de charge utile de requête API ChatCompletions multimodale avec un fichier vidéo en entrée :

  1. Créez la charge utile :

    BASE64_VIDEO=$(base64 -w 0 VIDEO_FILE)
    REQUEST_BODY=$(cat <<EOF
    {
    "model": "${MODEL_PROMPT_ID}",
    "messages": [
       {
          "role": "user",
          "content": [
                {
                   "type": "text",
                   "text": "Could you summarize this video for me?"
                },
                {
                   "type": "input_video",
                   "input_video": {
                      "data": "data:video/wmv;base64,${BASE64_VIDEO}",
                      "format": "wmv"
                   }
                }
          ]
       }
    ]
    }
    EOF
    
    )
    
  2. Envoyez la requête au point de terminaison. Vous devez exécuter cette commande à partir d'une machine qui se trouve sur le même réseau local que la machine certifiée pour l'API Gemini on GDC connected.

    curl -k -X POST \
    "${API_ENDPOINT}" \
    -d "${REQUEST_BODY}" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer ${BEARER_TOKEN}" \
    -H "x-goog-user-project: projects/${PROJECT}"
    

Exemple de requête d'API ListAvailableModels

Voici un exemple de requête d'API ListAvailableModels :

BEARER_TOKEN=$(gcloud alpha edge-cloud auth print-identity-token --cred-file="${CRED_FILE}" --audience="https://${IG_FQDN}")
# The request body -d parameter is intentionally omitted.
grpcurl -insecure \
  -H "Authorization: Bearer ${BEARER_TOKEN}" \
  -H "x-goog-user-project: projects/${PROJECT}" \
  "${IG_FQDN}" \
  cloud.gdc.ai.inference.inferencegateway.GeminiMetadataService.ListAvailableModels

Supprimer un point de terminaison de l'API Gemini on Google Distributed Cloud connected

Pour supprimer un point de terminaison de l'API Gemini on GDC connected :

  1. Annulez le déploiement du modèle :

    gcloud beta ai endpoints undeploy-model ENDPOINT_ID \
      --region=REGION \
      --deployed-model-id=DEPLOYED_MODEL_ID
    

    Remplacez les éléments suivants :

    • ENDPOINT_ID : ID du point de terminaison cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.
    • DEPLOYED_MODEL_ID : ID du modèle déployé.
  2. Supprimez le point de terminaison :

    gcloud beta ai endpoints delete ENDPOINT_ID \
       --project=PROJECT_ID \
       --region=REGION
    

    Remplacez les éléments suivants :

    • ENDPOINT_ID : ID du point de terminaison cible.
    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : région Google Cloud dans laquelle la zone Distributed Cloud connectée cible a été créée.

Nettoyer les ressources de point de terminaison

Pour nettoyer les ressources associées à un point de terminaison, suivez les étapes décrites dans cette section.

  1. Supprimez le point de terminaison de l'API et annulez le déploiement du modèle associé, comme décrit dans Supprimer un point de terminaison d'API Gemini on Google Distributed Cloud connecté.

  2. Supprimez le compte de service associé au point de terminaison :

     gcloud alpha edge-cloud service-accounts delete SERVICE_ACCOUNT \
        --project PROJECT_ID \
        --location REGION
    

    Remplacez les éléments suivants :

    • SERVICE_ACCOUNT : nom du compte de service cible.
    • PROJECT_ID : ID du projet Google Cloud cible.
    • REGION : Google Cloud région du projet Google Cloud cible.
  3. Désactivez l'instance de service Agent Platform associée au point de terminaison :

    1. Répertoriez les services déployés dans le projet et notez la valeur UUID de l'instance de service Agent Platform cible (VERTEX) renvoyée dans son champ name :

      gcloud alpha edge-cloud services list \
         --project PROJECT_ID \
         --location REGION
      

      Remplacez les éléments suivants :

      • PROJECT_ID : ID du projet Google Cloud cible.
      • REGION : Google Cloud région du projet Google Cloud cible.

      La valeur du champ name est au format projects/PROJECT_ID/locations/REGION/zonalServices/SERVICE_UUID.

    2. Désactivez l'instance de service Agent Platform cible (VERTEX) :

      gcloud alpha edge-cloud services disable SERVICE_UUID \
        --project PROJECT_ID \
        --location REGION
      

      Remplacez les éléments suivants :

      • SERVICE_UUID : UUID de l'instance de service Agent Platform cible.
      • PROJECT_ID : ID du projet Google Cloud cible.
      • REGION : Google Cloud région du projet Google Cloud cible.
  4. Désactivez le projet Google Cloud qui héberge le point de terminaison :

     gcloud alpha edge-cloud projects disable PROJECT_ID \
        --organization ORGANIZATION_ID \
        --location REGION \
        --zone ZONE
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID du projet Google Cloud cible.
    • ORGANIZATION_ID : ID de l'organisation Google Cloud cible.
    • REGION : Google Cloud région du projet Google Cloud cible.
    • ZONE : zone Distributed Cloud connectée cible.

Résoudre les problèmes liés aux points de terminaison

Si votre point de terminaison de l'API Gemini on GDC connected ne fonctionne plus, contactez votre représentant Google pour résoudre le problème.