Athrun Data Intelligence


Los agentes de IA que navegan por la web necesitan más que una navegación de página básica. Nuestros clientes nos dicen que necesitan agentes que mantengan el estado de la sesión en todas las interacciones, enruten el tráfico a través de la infraestructura de proxy corporativa y se ejecuten con configuraciones de navegador personalizadas. Navegador AgentCore proporciona un entorno de navegador seguro y apartado para que sus agentes interactúen con las aplicaciones web. Hasta ahora, en Agent Core Browser, cada sesión del navegador comenzaba desde una pizarra en blanco con configuraciones predeterminadas y camino directo a Internet, lo que limitaba lo que los agentes podían alcanzar en entornos empresariales del mundo verdadero.

Hoy anunciamos tres nuevas capacidades que abordan estos requisitos: configuración de proxy, perfiles del navegadory extensiones del navegador. Juntas, estas funciones le brindan un control detallado sobre cómo interactúan sus agentes de IA con la web.

Estas tres capacidades le brindan control sobre cómo se conectan las sesiones del navegador AgentCore a Internet, qué estado conservan y cómo se comportan. La configuración de proxy le permite enrutar el tráfico del navegador a través de sus propios servidores proxy, proporcionando estabilidad de IP e integración con la infraestructura de red corporativa. Los perfiles del navegador conservan las cookies y el almacenamiento nave entre sesiones, por lo que los agentes pueden reanudar los flujos de trabajo autenticados sin repetir los flujos de inicio de sesión. Las extensiones del navegador cargan extensiones de Chrome en las sesiones para personalizar el comportamiento del navegador según su caso de uso. Esta publicación analizará cada capacidad con ejemplos de configuración y casos de uso prácticos para ayudarlo a comenzar.

Cómo los perfiles persistentes del navegador mantienen a los agentes de IA funcionando sin problemas

Los clientes que crean agentes para pruebas de comercio electrónico, flujos de trabajo autenticados y recorridos de beneficiario de varios pasos necesitan sesiones de navegador que recuerden el estado. Sin perfiles persistentes, los agentes deben retornar a autenticarse y rehacer el contexto al inicio de cada sesión, lo que añade latencia y fragilidad a los flujos de trabajo automatizados. Los perfiles de navegador resuelven esto guardando y restaurando cookies y almacenamiento nave entre sesiones, de modo que un agente que inició sesión en un portal ayer pueda continuar donde lo dejó hoy.

La estabilidad de la propiedad intelectual es otro requisito popular. Los portales financieros y de atención médica validan las sesiones según la dirección IP de origen, y la rotación de direcciones IP de AWS provoca ciclos frecuentes de reautenticación que interrumpen los flujos de trabajo de larga duración. La compatibilidad con proxy le permite enrutar el tráfico a través de servidores con direcciones IP de salida estables, manteniendo la continuidad de la sesión y cumpliendo con los requisitos de la serie de direcciones IP permitidas. Las organizaciones que dirigen el tráfico a través de servidores proxy corporativos deben extender esta habilidad a los agentes de IA para las sesiones de navegador. La configuración de proxy permite el camino a páginas web y capital internos que requieren conectividad basada en proxy.

Las extensiones del navegador permiten configuraciones personalizadas, como aislamiento de anuncios, asistentes de autenticación u otras personalizaciones a nivel del navegador. Cuando se combinan con el registro de proxy, estas capacidades ayudan a proporcionar control de camino y evidencia de auditoría que puede programas de cumplimiento como FedRAMP, HITRUST y PCI.

Característica 1: configuración de proxy

Navegador ahora admite el enrutamiento del tráfico del navegador a través de sus propios servidores proxy externos. Cuando crea una sesión de navegador con configuración de proxy, AgentCore configura el navegador para enrutar el tráfico HTTP y HTTPS a través de sus servidores proxy especificados.

como funciona

tu llamas StartBrowserSession con un proxyConfiguration especificando su servidor proxy. Si utiliza autenticación, AgentCore recupera las credenciales de proxy de AWS Secrets Manager. La sesión del navegador comienza con la configuración de su proxy aplicada y el tráfico del navegador se dirige a través de su servidor proxy según las reglas de enrutamiento de su dominio.

Empezando con los proxies

Completa estos requisitos previos antaño de proceder.

import boto3 
import json 
client = boto3.client('secretsmanager') 
client.create_secret( 
    Name="my-proxy-credentials", 
    SecretString=json.dumps({ 
        'username': '', 
        'password': '' 
    }) 
) 

Paso 2: Crear una sesión de navegador con configuración de proxy

session_client = boto3.client('bedrock-agentcore', region_name="") 
 
response = session_client.start_browser_session( 
    browserIdentifier="aws.browser.v1", 
    name="my-proxy-session", 
    proxyConfiguration={ 
        "proxies": ({ 
            "externalProxy": { 
                "server": "", 
                "port": 8080, 
                "credentials": { 
                    "basicAuth": { 
                        "secretArn": "arn:aws:secretsmanager:::secret:" 
                    } 
                } 
            } 
        }) 
    } 
) 
print(f"Session ID: {response('sessionId')}")

El campo de credenciales es opcional para servidores proxy sin autenticación.

Enrutamiento basado en dominio

Usar domainPatterns para enrutar dominios específicos a través de servidores proxy designados, y bypass.domainPatterns para dominios que deberían conectarse directamente:

proxyConfiguration={ 
    "proxies": ( 
        { 
            "externalProxy": { 
                "server": "corp-proxy.example.com", 
                "port": 8080, 
                "domainPatterns": (".company.com", ".internal.corp") 
            } 
        }, 
        { 
            "externalProxy": { 
                "server": "general-proxy.example.com", 
                "port": 8080 
            } 
        } 
    ), 
    "bypass": { 
        "domainPatterns": (".amazonaws.com") 
    } 
}

Con esta configuración, las solicitudes de y internal.corp ruta por el corporativo agente, solicitudes a amazonaws.com evitar todos los proxyy todo lo demás se enruta a través del proxy militar. Thmiscampos e son solo un ejemplo. Suprimir dominios puede coincidir bypass.domainPatterns para conectarse directamente y extranjero agente puede ser un válido proxy domainPatterns ruta a través de ese proxy (la primera coincidencia deseo según el orden de la matriz).

Prioridad de enrutamiento

Cuando AgentCore Browser procesa una solicitud saliente, recorre tres niveles de reglas de enrutamiento para osar dónde dirigir el tráfico. Primero comprueba la serie de omisiones. Si el dominio de destino coincide con un bypass.domainPatterns entrada, la solicitud se conecta directamente a Internet sin utilizar ningún proxy. Si el dominio no coincide con una regla de omisión, AgentCore verifica la configuración de cada proxy. domainPatterns en orden y enruta la solicitud a través del primer proxy cuyo patrón coincida. Si ningún patrón de proxy coincide, la solicitud pasa al proxy predeterminado, que es la entrada de proxy que no tiene domainPatterns definido.

Pruebe la nueva función de proxy con esto ejemplo de código.

Característica 2: perfiles del navegador

Los perfiles del navegador le permiten conservar y reutilizar los datos de la sesión en múltiples sesiones del navegador, incluidas las cookies y el almacenamiento nave. Un agente que se autentica en un portal web en una sesión puede restaurar ese estado en una sesión posterior sin retornar a iniciar sesión. Esto es útil para flujos de trabajo autenticados donde retornar a iniciar sesión agrega latencia, pruebas de comercio electrónico donde los carritos de compras y los datos de formularios deben sobrevivir entre sesiones y recorridos de beneficiario de varios pasos que abarcan múltiples invocaciones del navegador.

El ciclo de vida del perfil tiene cuatro etapas. empiezas llamando create_browser_profile() para crear un perfil con nombre. Al final de una sesión, usted apasionamiento save_browser_session_profile() para capturar las cookies actuales y el almacenamiento nave en ese perfil. Cuando inicias una nueva sesión, pasas el identificador del perfil en el profileConfiguration parámetro de start_browser_session()que restaura el estado guardado en el nuevo navegador. Cuando ya no necesitas el perfil, llamas delete_browser_profile() para limpiarlo.

El sucesivo ejemplo muestra un agente que agrega artículos a un carrito de compras en una sesión y verifica que persistan en una sesión posterior.

Completa estos requisitos previos antaño de proceder.

import boto3 

control_client = boto3.client('bedrock-agentcore-control', region_name="") # replace by your region 

session_client = boto3.client('bedrock-agentcore', region_name="") # replace by your region  
 
# Create a browser profile 
profile = control_client.create_browser_profile(name="ecommerce_profile") 
profile_id = profile('profileId') 
 
# Session 1: Add items to cart 
session1 = session_client.start_browser_session( 
    browserIdentifier=”aws.browser.v1”, 
    name="shopping-session-1" 
) 
# ... agent navigates and adds items to cart ... 
 
# Save session state to profile 
session_client.save_browser_session_profile( 
    sessionId=session1('sessionId'), 
    browserIdentifier=”aws.browser.v1”, 
    profileIdentifier=profile_id 
) 
session_client.stop_browser_session(sessionId=session1('sessionId'), browserIdentifier="aws.browser.v1") 
 
# Session 2: Resume with saved profile 
session2 = session_client.start_browser_session( 
    browserIdentifier=”aws.browser.v1”, 
    name="shopping-session-2", 
    profileConfiguration={"profileIdentifier": profile_id} 
) 
# Cart items from Session 1 are now available 

Pruebe la nueva función de perfil con esto ejemplo de código.

Característica 3: extensiones del navegador

Las extensiones del navegador le permiten cargar extensiones de Chrome en las sesiones del navegador AgentCore para personalizar el comportamiento del navegador. Empaquetas extensiones como archivos ZIP, las subes a Servicio de almacenamiento simple de Amazon (Amazon S3) y haga relato a ellos al iniciar una sesión del navegador. Esto proporciona camino a la funcionalidad acondicionado a través de la API de extensión de Chrome, desde enrutamiento de proxy y aislamiento de anuncios hasta asistentes de autenticación y modificación de contenido. Por ejemplo, puede inyectar tokens de autenticación para aplicaciones internas, eliminar anuncios y realizar un seguimiento de los scripts que interfieren con la navegación del agente, o modificar el contenido de la página para mejorar la forma en que los agentes interactúan con un sitio.

Tu extensión debe seguir el unificado. extensión de cromo formatee y cumpla con las pautas de extensión de Chromium.

Completa estos requisitos previos antaño de proceder.

  1. Cargue la extensión a Amazon S3:
    # Upload extension to S3 
    
    import boto3 
    s3 = boto3.client('s3') 
    s3.upload_file( 
        'my-extension.zip', 
        'amzn-s3-demo-bucket-extensions', 
        'extensions/my-extension.zip' 
    ) 

  2. Luego, inicie una sesión con la extensión, apuntando al depósito de Amazon S3 donde cargó el archivo zip:
    import boto3 
    region = "" # replace by your region 
    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": "amzn-s3-demo-bucket-extensions", 
                        "prefix": "extensions/my-extension.zip" 
                    } 
                } 
            }, 
            { 
                "location": { 
                    "s3": { 
                        "bucket": "amzn-s3-demo-bucket-extensions", 
                        "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')}") 

Pruebe la nueva función de extensiones con esto ejemplo de código.

Conclusión

La configuración de proxy, los perfiles del navegador y las extensiones del navegador brindan a AgentCore Browser los controles de enrutamiento de proxy, persistencia de sesión y extensibilidad que los clientes necesitan para implementar agentes de IA que navegan por la web en producción. Puede enrutar el tráfico a través de su infraestructura de proxy corporativa, amparar la continuidad de la sesión en todas las interacciones y personalizar el comportamiento del navegador con extensiones, todo mientras mantiene las credenciales seguras en AWS Secrets Manager. Los clientes pueden transportar información y contexto de comercio electrónico entre sesiones, crear su propia extensión y probarla en un entorno seguro antaño del propagación y, asimismo, hacer que el navegador se conecte a su red a través de servidores proxy.

Para comenzar, consulte los tutoriales en el Muestras de Amazon Bedrock AgentCore repositorio y el navegador Amazon Bedrock AgentCore documentación. Para obtener más información sobre precios, visite Precios de Amazon Bedrock AgentCore.


Acerca de los autores

Josué Samuel

Josué Samuel es un arquitecto senior de soluciones especializado en IA/ML en AWS que acelera la transformación empresarial a través de AI/ML y soluciones de IA generativa, con sede en Melbourne, Australia. Un apasionado disruptor, se especializa en IA agente y técnicas de codificación: cualquier cosa que haga que los constructores sean más rápidos y felices. Fuera del trabajo, juguetea con proyectos de automatización del hogar y codificación de IA, y disfruta de la vida con su esposa, sus hijos y su perro.

Evandro Franco

Evandro Franco es un verificado de datos sénior que trabaja en Amazon Web Services. Es parte del equipo General GTM que ayuda a los clientes de AWS a pasar los desafíos comerciales relacionados con AI/ML en AWS, principalmente en Amazon Bedrock AgentCore y Strands Agents. Tiene más de 18 abriles de experiencia trabajando con tecnología, desde ampliación de software, infraestructura, serverless, hasta enseñanza inconsciente. En su tiempo excarcelado, a Evandro le gusta retar con su hijo, principalmente construir divertidos ladrillos Analfabeto.

Kosti Vasilakakis

Kosti Vasilakakis es PM principal en AWS en el equipo de Agentic AI, donde ha dirigido el diseño y ampliación de varios servicios Bedrock AgentCore desde cero, incluidos Runtime, Browser, Code Interpreter e Identity. Anteriormente trabajó en Amazon SageMaker desde sus inicios, lanzando capacidades de IA/ML que ahora utilizan miles de empresas en todo el mundo. Al principio de su carrera, Kosti fue verificado de datos. Fuera del trabajo, crea automatizaciones de productividad personal, juega tenis y disfruta de la vida con su esposa e hijos.

Yan Marim

Yan Marim es arquitecto senior de soluciones diestro en GenAI en Amazon Web Services, con sede en Brasil. Como parte del equipo de especialistas de LATAM, explorador a los clientes a través de su alucinación de asimilación de IA generativa, enfocándose en Amazon Bedrock y soluciones de IA agente. En su tiempo excarcelado, Yan disfruta advenir tiempo de calidad con su esposa y su perro, y ver partidos de fútbol.

Kevin Orellana

Kevin Orellana es ingeniero de ampliación de software en Amazon Web Services en el equipo Bedrock AgentCore, con sede en Seattle. Construye y opera la infraestructura central que impulsa las capacidades de IA agente, incluidos el navegador, el intérprete de código y el tiempo de ejecución. Al principio de su carrera, Kevin trabajó en el equipo de inferencia de Bedrock que albergaba modelos fronterizos. En su tiempo excarcelado, le gusta caminar con su Goldendoodle, probar con simulaciones de múltiples agentes y trabajar para crear un asistente personal de inteligencia industrial que hable inglés, castellano y mandarín.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *