View a markdown version of this page

Browsererweiterungen verwenden - Amazon Grundgestein AgentCore

Browsererweiterungen verwenden

Mit Browsererweiterungen können Sie bei der Erstellung der Sitzung benutzerdefinierte Erweiterungen in Browsersitzungen installieren. Auf diese Weise können Sie das Browserverhalten mit Ihren eigenen Erweiterungen für Automatisierungsaufgaben, Web-Scraping, Tests und mehr anpassen.

-Übersicht

Browsererweiterungen in Amazon Bedrock AgentCore funktionieren wie folgt:

  1. Sie stellen eine Liste von ZIP-Dateien mit Browsererweiterungen bereit, die in Ihren eigenen Amazon S3 S3-Buckets gespeichert sind

  2. Der Service überprüft anhand Ihrer Anmeldeinformationen, ob Sie Zugriff auf diese Amazon S3 S3-Objekte haben.

  3. Während des Starts der Browsersitzung werden Erweiterungen aus Ihrem Amazon S3 S3-Bucket heruntergeladen und in der Browsersitzung installiert.

Voraussetzungen

Bevor Sie Browsererweiterungen verwenden, stellen Sie sicher, dass Sie über Folgendes verfügen:

  • Sie haben die allgemeinen Browservoraussetzungen erfüllt

  • Ein Amazon Amazon S3 S3-Bucket zum Speichern Ihrer ZIP-Erweiterungsdateien

  • IAM-Berechtigungen für den Zugriff auf den Amazon S3 S3-Bucket, der Ihre Erweiterungen enthält. Fügen Sie Ihrer IAM-Richtlinie die folgenden Berechtigungen hinzu:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "ExtensionS3Access", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::<S3Bucket>/<path_to_extensions>/*" ] } ] }
    Anmerkung

    Der Amazon S3 S3-Bucket muss sich in demselben AWS Konto wie die Browsersitzung befinden. Erweiterungen haben eine Dateigrößenbeschränkung von 10 MB und maximal 10 Erweiterungen pro Sitzung.

Erweiterungsdateien werden vorbereitet

So bereiten Sie eine Erweiterung für die Verwendung mit dem Browser Tool vor:

  1. Erstellen Sie eine Chrome-Erweiterung

    Ihre Erweiterung sollte dem standardmäßigen Chromium-Erweiterungsformat und den Richtlinien für Chromium-Erweiterungen entsprechen. Jede Erweiterung muss eine gültige manifest.json Datei enthalten.

  2. Erstellen Sie eine ZIP-Datei

    Den Inhalt des Erweiterungsverzeichnisses komprimieren (nicht den übergeordneten Ordner):

    cd my-extension zip -r ../my-extension.zip.
  3. Auf S3 hochladen

    Laden Sie die ZIP-Datei in Ihren Amazon S3 S3-Bucket hoch:

    aws s3 cp my-extension.zip s3://my-extensions-bucket/extensions/my-extension.zip

Eine Browsersitzung mit Erweiterungen erstellen

Sie können mithilfe der AWS CLI, des SDK oder der API eine Browsersitzung mit Erweiterungen erstellen.

Beispiel
AWS CLI
  1. So starten Sie eine Browsersitzung mit Erweiterungen mithilfe der AWS CLI:

    aws bedrock-agentcore start-browser-session \ --region <Region> \ --browser-identifier "aws.browser.v1" \ --name "my-session-with-extensions" \ --session-timeout-seconds 1800 \ --extensions '[ { "location": { "s3": { "bucket": "my-extensions-bucket", "prefix": "extensions/my-extension.zip" } } } ]'
Boto3
  1. So starten Sie eine Browsersitzung mit Erweiterungen mithilfe des AWS SDK for Python (Boto3):

    import boto3 region = "us-west-2" client = boto3.client('bedrock-agentcore', region_name=region) response = client.start_browser_session( browserIdentifier="aws.browser.v1", name="my-session-with-extensions", sessionTimeoutSeconds=1800, viewPort={ 'height': 1080, 'width': 1920 }, extensions=[ { "location": { "s3": { "bucket": "my-extensions-bucket", "prefix": "extensions/my-extension.zip" } } }, { "location": { "s3": { "bucket": "my-extensions-bucket", "prefix": "extensions/another-extension.zip", "versionId": "abc123" # Optional - for versioned S3 buckets } } } ] ) print(f"Session ID: {response['sessionId']}") print(f"Status: {response['status']}") print(f"Automation Stream: {response['streams']['automationStream']['streamEndpoint']}")
API
  1. Um eine Browsersitzung mit Erweiterungen mithilfe der API zu starten:

    # Using awscurl awscurl -X PUT \ "https://bedrock-agentcore.<Region>.amazonaws.com/browsers/aws.browser.v1/sessions/start" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ --service bedrock-agentcore \ --region <Region> \ -d '{ "name": "my-session-with-extensions", "sessionTimeoutSeconds": 1800, "viewPort": { "height": 1080, "width": 1920 }, "extensions": [ { "location": { "s3": { "bucket": "my-extensions-bucket", "prefix": "extensions/my-extension.zip" } } }, { "location": { "s3": { "bucket": "my-extensions-bucket", "prefix": "extensions/another-extension.zip" } } } ] }'