Al implementar Agentes de IA a Amazon Bedrock Agentcore Runtime (Actualmente en panorama previa), los clientes a menudo desean usar nombres de dominio personalizados para crear una experiencia profesional y perfecta.
Por defecto, los agentes de tiempo de ejecución de AgentCore usan puntos finales como https://bedrock-agentcore.{region}.amazonaws.com/runtimes/{EncodedAgentARN}/invocations
.
En esta publicación, discutimos cómo transfigurar estos puntos finales en dominios personalizados fáciles de usar (como https://agent.yourcompany.com
) usando Amazon Cloudfront como un proxy inverso. La decisión combina Cloudfront, Ruta de Amazon 53y Administrador de certificados de AWS (ACM) para crear una configuración de dominio personalizada segura y escalable que funcione sin problemas con sus agentes existentes.
Beneficios del tiempo de ejecución de Amazon Bedrock Agentcore
Si está construyendo agentes de IA, probablemente haya luchado con los desafíos de alojamiento: encargar la infraestructura, el manejo de la autenticación, la escalera y el mantenimiento de la seguridad. El tiempo de ejecución de Amazon Bedrock Agentcore ayuda a invadir estos problemas.
Amazon Bedrock AgentCore Runtime es entorno descreído; puedes usarlo con Langgraph, Crewai, Agentes de hiloso agentes personalizados que ha construido desde cero. Admite tiempos de ejecución extendidos hasta 8 horasconsumado para tareas de razonamiento complejas que las funciones tradicionales sin servidor no pueden manejar. Cada sesión de heredero se ejecuta en su propia microvm aislada, proporcionando seguridad que es crucial para las aplicaciones empresariales.
El maniquí de precios basado en el consumo significa que solo paga por lo que usa, no por lo que provoca. Y a diferencia de otras soluciones de alojamiento, el tiempo de ejecución de Amazon Bedrock Agentcore incluye autenticación incorporada y observabilidad especializada para agentes de IA fuera de la caja.
Beneficios de los dominios personalizados
Cuando se usa Amazon Bedrock AgentCore Runtime con Autorización abierta (OAuth) Autenticación, sus aplicaciones realizan solicitudes HTTPS directas al punto final del servicio. Aunque esto funciona, los dominios personalizados ofrecen varios beneficios:
- Marca personalizada -Aplicaciones del flanco del cliente (navegadores web, aplicaciones móviles) muestran su dominio de marca en circunstancia de detalles de infraestructura de AWS en solicitudes de red
- Mejor experiencia de desarrollador – Los equipos de expansión pueden usar puntos finales memorables y de marca en circunstancia de copiar y pegar puntos finales de largos AWS a través de las bases y configuraciones de código
- Mantenimiento simplificado – Los dominios personalizados hacen que sea sencillo gobernar puntos finales al implementar múltiples agentes o desempolvar configuraciones en todos los entornos
Descripción militar de la decisión
En esta decisión, utilizamos CloudFront como un proxy inverso para transfigurar las solicitudes de su dominio personalizado en las llamadas de API de tiempo de ejecución de Amazon Bedrock AgentCore. En circunstancia de usar el punto final predeterminado, sus aplicaciones pueden hacer solicitudes a una URL claro de usar como https://agent.yourcompany.com/
.
El venidero diagrama ilustra la inmueble de la decisión.
El flujo de trabajo consta de los siguientes pasos:
- Una aplicación de cliente se autentica con Amazon Cognito y recibe un token de portador.
- El cliente realiza una solicitud HTTPS a su dominio personalizado.
- La ruta 53 resuelve la solicitud DNS a CloudFront.
- CloudFront reenvía la solicitud autenticada al agente de tiempo de ejecución de Amazon Bedrock.
- El agente procesa la solicitud y devuelve la respuesta a través de la misma ruta.
Puede usar la misma distribución de CloudFront para servir tanto a su aplicación frontend como a los puntos finales del agente de backend, evitando Compartir fortuna de origen cruzado (CORS) problemas porque todo se origina en el mismo dominio.
Requisitos previos
Para seguir este tutorial, debe tener lo venidero en su circunstancia:
Aunque el tiempo de ejecución de Amazon Bedrock Agentcore puede estar en otro Regiones AWS apoyadasCloudFront requiere que los certificados SSL estén en el us-east-1
Región.
Puede designar entre las siguientes opciones de dominio:
- Use un dominio existente – Agregue un subdominio como
agent.yourcompany.com
- Registre un nuevo dominio – Use la ruta 53 para registrar un dominio si no tiene uno
- Use la URL predeterminada desde CloudFront – No se requiere registro o configuración de dominio
Elija la tercera opción si desea probar la decisión rápidamente ayer de configurar un dominio personalizado.
Crear un agente con autenticación entrante
Si ya tiene un agente implementado con la autenticación OAuth, puede silenciar a la venidero sección para configurar el dominio personalizado. De lo contrario, siga estos pasos para crear un nuevo agente usando Amazon Cognito como su proveedor de OAuth:
- Cree un nuevo directorio para su agente con la venidero estructura:
- Crear el código del agente principal en
agent_example.py
:
- Juntar dependencias a
requirements.txt
:
- Ejecute los siguientes comandos para crear un heredero de heredero de Amazon Cognito y probar el heredero:
- Implemente el agente utilizando la interfaz de renglón de comandos de bedrock de Amazon (CLI) proporcionada por el kit de herramientas de inicio:
Tome nota de su agente Nombre de fortuna de Amazon (ARN) de su agente luego de la implementación. Necesitará esto para la configuración de dominio personalizado.
Para ejemplos y detalles adicionales, ver Autenticar y autorizar con autenticación entrante y autora de salida.
Configurar la decisión de dominio personalizado
Ahora implementemos la decisión de dominio personalizado utilizando el AWS CDK. Esta sección le muestra cómo crear la distribución de CloudFront que proxen sus solicitudes de dominio personalizadas a los puntos finales de tiempo de ejecución de Amazon Bedrock Agentcore.
- Cree un nuevo directorio e inicialice un tesina AWS CDK:
- Codifique el agente ARN y prepare la configuración de origen de CloudFront:
Si su aplicación frontend se ejecuta en un dominio diferente al punto final de su agente, debe configurar los encabezados CORS. Esto es global si su frontend está alojado en un dominio diferente (por ejemplo, https://app.yourcompany.com
gusto https://agent.yourcompany.com
), o si se está desarrollando localmente (por ejemplo, http://localhost:3000
Golpear al punto final de su agente de producción).
- Para manejar los requisitos de CORS, cree una Cloudfront Política de encabezados de respuesta:
- Cree una distribución de CloudFront para efectuar como un proxy inverso para los puntos finales de su agente:
Colocar cache_policy=CachePolicy.CACHING_DISABLED
Para comprobar de que las respuestas de su agente permanezcan dinámicas y no se almacenen en personalidad por CloudFront.
- Si está utilizando un dominio personalizado, agregue un certificado SSL y una configuración DNS a su pila:
El venidero código es la pila completa de AWS CDK que combina todos los componentes:
- Configurar el AWS CDK
app
punto de entrada:
Implementar su dominio personalizado
Ahora puede implementar la decisión y realizar que funciona con dominios personalizados y predeterminados. Complete los siguientes pasos:
- Renovar los siguientes títulos en
agentcore_custom_domain_stack.py
:- Su Amazon Bedrock Agentcore Runtime Arn
- Su nombre de dominio (si usa un dominio personalizado)
- Su ID de zona alojada (si usa un dominio personalizado)
- Implementar usando el AWS CDK:
Pon a prueba tu punto final
A posteriori de implementar el dominio personalizado, puede probar sus puntos finales utilizando el dominio personalizado o el dominio predeterminado de CloudFront.
Use el venidero código para probar con su dominio personalizado:
Alternativamente, use el venidero código para probar con el dominio predeterminado de CloudFront:
Consideraciones
A medida que implementa esta decisión en la producción, las siguientes son algunas consideraciones importantes:
- Implicaciones de costos – CloudFront agrega costos para la transferencia de datos y las solicitudes. Revisar Precios de Amazon Cloudfront Para comprender el impacto de sus patrones de uso.
- Mejoras de seguridad – Considere implementar las siguientes medidas de seguridad:
- AWS WAF Reglas para ayudar a proteger contra las exploits web comunes.
- Restricción de tasas para ayudar a alertar el despotismo.
- Geo-Restricciones Si su agente solo debe ser accesible desde regiones específicas.
- Audición – Habilitar CloudFront registros de ataque y configurar Amazon CloudWatch alarmas para monitorear las tasas de error, la latencia y el convexidad de solicitud.
Alejar
Para evitar costos continuos, elimine los fortuna cuando ya no los necesite:
Es posible que deba eliminar manualmente las zonas alojadas de la Ruta 53 y los certificados ACM de sus respectivas consolas de servicio.
Conclusión
En esta publicación, le mostramos cómo crear nombres de dominio personalizados para su agente de ejecución de Amazon Bedrock Agent de agente de ejecución utilizando CloudFront como un proxy inverso. Esta decisión proporciona varios beneficios esencia: integración simplificada para equipos de expansión, dominios personalizados que se alinean con su estructura, percepción de infraestructura más limpia y mantenimiento directo cuando los puntos finales necesitan actualizaciones. Al usar CloudFront como un proxy inverso, además puede servir tanto en los puntos finales de la aplicación frontend y el agente de backend del mismo dominio, evitando los desafíos comunes de CORS.
Le recomendamos que explore esta decisión aún más adaptándola a sus micción específicas. Es posible que desee mejorarlo con características de seguridad adicionales, configurar el monitoreo o integrarlo con su infraestructura existente.
Para obtener más información sobre la construcción y la implementación de agentes de IA, vea el Lazarillo de desarrolladores de Amazon Bedrock Agentcore. Para configuraciones avanzadas y mejores prácticas con CloudFront, consulte el Documentación de Amazon Cloudfront. Puede encontrar información detallada sobre los certificados SSL en el Documentación del administrador de certificados de AWSy gobierno del dominio en el Documentación de Amazon Route 53.
Amazon Bedrock AgentCore está actualmente en panorama previa y está sujeto a cambios. El precio habitual de AWS se aplica a los servicios adicionales utilizados, como CloudFront, Route 53 y Certificate Manager.
Sobre los autores
Rahmat Fedayizada es un arquitecto de soluciones senior con el equipo de AWS Energy and Utilities. Trabaja con compañías de energía para diseñar e implementar arquitecturas escalables, seguras y en extremo disponibles. Rahmat es un apasionado de traducir requisitos técnicos complejos en soluciones prácticas que generen el valía comercial.
Paras bhuva es directivo senior de inmueble de soluciones en AWS, donde lidera un equipo de arquitectos de soluciones que ayudan a los clientes de energía a innovar y acelerar su transformación. Habiendo comenzado como arquitecto de soluciones en 2012, Paras es un apasionado de inmueble de soluciones escalables y organizaciones de construcción centradas en la modernización de aplicaciones e iniciativas de IA.