Démarrage rapide pour l'utilisation d'un ordinateur

Cette page explique comment effectuer des appels d'API directs pour créer et utiliser un environnement de bac à sable pour l'utilisation d'un ordinateur. Dans ce guide de démarrage rapide, vous effectuez les tâches suivantes :

  • Créez une instance Agent Platform pour accéder au bac à sable.
  • Créez un bac à sable pour l'utilisation d'un ordinateur.
  • Générez un jeton d'accès pour le bac à sable.
  • Envoyez une requête pour vérifier l'état.
  • Nettoyez les ressources.

Avant de commencer

Configurez votre projet et votre environnement.

Configurer votre projet

  1. Connectez-vous à votre Google Cloud compte. Si vous n'avez jamais utilisé Google Cloud, créez un compte pour évaluer les performances de nos produits dans des scénarios réels. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Gemini Enterprise Agent Platform API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Gemini Enterprise Agent Platform API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

Obtenir les rôles requis

Pour utiliser le bac à sable et générer des jetons, vous avez besoin des rôles suivants :

  • Utilisateur Agent Platform (roles/aiplatform.user) sur le projet.
  • Créateur de jetons du compte de service (roles/iam.serviceAccountTokenCreator) sur le compte de service utilisé pour la génération de jetons.
  • Le compte de service utilisé pour la génération de jetons doit également disposer du rôle Utilisateur Agent Platform (roles/aiplatform.user) sur le projet.

Installer les bibliothèques

Installez le SDK Agent Platform : posix-terminal pip install google-cloud-aiplatform>=1.112.0

Créer une instance Agent Platform

Pour utiliser le bac à sable, créez d'abord une instance Agent Platform.

import vertexai
client = vertexai.Client(
    project='PROJECT_ID',
    location='LOCATION',
    http_options={
        "api_version": "v1beta1",
    }
)
agent_instance = client.agent_engines.create()
agent_instance_name = agent_instance.api_resource.name

Remplacez les éléments suivants :

  • 'PROJECT_ID' : ID de votre Google Cloud projet.
  • 'LOCATION' : région de votre instance (par exemple, us-central1).

Créer un modèle pour l'utilisation d'un ordinateur

Créez un modèle de bac à sable que vous utiliserez lorsque vous créerez un bac à sable pour l'utilisation d'un ordinateur.

# Create a default Computer Use sandbox template
templates_client = client.agent_engines.sandboxes.templates
tmplt_operation = templates_client.create(
    name=agent_instance_name,
    display_name='DISPLAY_NAME',
    config={
        "default_container_environment": {
            "default_container_category": "DEFAULT_CONTAINER_CATEGORY_COMPUTER_USE",
        },
        "egress_control_config": {
            "internet_access": True,
        },
    },
)
template_name = tmplt_operation.response.name
print(f"Created template: {template_name}")

Créer un bac à sable pour l'utilisation d'un ordinateur

Créez un environnement de bac à sable à partir du modèle.

# Create a sandbox environment referencing the template
create_operation = client.agent_engines.sandboxes.create(
    name=agent_instance_name,
    config={
        "sandbox_environment_template": template_name,
        "display_name": 'DISPLAY_NAME',
    }
)
sandbox = create_operation.response
print(f"Created sandbox environment: {sandbox.name}")

Générer un jeton d'accès

Pour interagir avec le bac à sable, générez un jeton d'accès JSON Web Token (JWT) à l'aide d'un compte de service.

service_account_email = "SERVICE_ACCOUNT_EMAIL"
access_token = client.agent_engines.sandboxes.generate_access_token(
    service_account_email=service_account_email,
)

Remplacez SERVICE_ACCOUNT_EMAIL par l'adresse e-mail du compte de service qui dispose du rôle Créateur de jetons du compte de service.

Envoyer une requête au bac à sable

Envoyez une requête HTTP GET au serveur d'API du bac à sable pour vérifier son état.

response = client.agent_engines.sandboxes.send_command(
    http_method="GET",
    access_token=access_token,
    sandbox_environment=sandbox
)
print(f"Sandbox response: {response.body}")

Libérer de l'espace

Pour éviter que des frais ne vous soient facturés, supprimez les ressources créées dans ce guide de démarrage rapide.

client.agent_engines.sandboxes.delete(name=sandbox.name)
agent_instance.delete()

Étape suivante

  • Découvrez les instantanés pour la gestion du cycle de vie du bac à sable.