Esta publicación está coescrita con Ranjit Rajan, Abdullahi Olaoye y Abhishek Sawarkar de NVIDIA.
La próxima frontera de la IA no son simplemente asistentes más inteligentes basados en chat, sino agentes autónomos que razonan, planifican y ejecutan en sistemas completos. Pero para lograr esto, los desarrolladores empresariales deben pasar de prototipos a agentes de IA listos para producción y que escale de forma segura. Este desafío crece a medida que los problemas empresariales se vuelven más complejos y requieren arquitecturas en las que múltiples agentes especializados colaboren para realizar tareas sofisticadas.
Crear agentes de IA en desarrollo difiere fundamentalmente de implementarlos a escala. Los desarrolladores enfrentan un abismo entre el prototipo y la producción, luchando con la optimización del rendimiento, el escalamiento de recursos, la implementación de seguridad y el monitoreo operativo. Los enfoques típicos dejan a los equipos haciendo malabarismos con múltiples herramientas y marcos desconectados, lo que dificulta mantener la coherencia desde el desarrollo hasta la implementación con un rendimiento óptimo. Ahí es donde brilla la poderosa combinación de Strands Agents, Amazon Bedrock AgentCore y NVIDIA NeMo Agent Toolkit. Puede utilizar estas herramientas juntas para diseñar sistemas sofisticados de múltiples agentes, organizarlos y escalarlos de forma segura en producción con observabilidad, evaluación de agentes, creación de perfiles y optimización del rendimiento integradas. Esta publicación demuestra cómo utilizar esta solución integrada para crear, evaluar, optimizar e implementar agentes de IA en Amazon Web Services (AWS) desde el desarrollo inicial hasta la implementación de producción.
Fundación para agentes preparados para la empresa
El marco de código abierto Strands Agents simplifica el desarrollo de agentes de IA a través de su enfoque basado en modelos. Los desarrolladores crean agentes utilizando tres componentes:
Modelos básicos (FM) como Amazon Nova, Claude de Anthropic y Llama Tools de Meta (más de 20 herramientas integradas y personalizadas que utilizan decoradores de Python) Indicaciones que guían el comportamiento de los agentes.
El marco incluye integraciones integradas con servicios de AWS como Amazon Bedrock y Amazon Simple Storage Service (Amazon S3), soporte de pruebas locales, flujos de trabajo de integración y desarrollo continuo (CI/CD), múltiples opciones de implementación y observabilidad de OpenTelemetry.
Amazon Bedrock AgentCore es una plataforma agente para crear, implementar y operar agentes eficaces de forma segura a escala. Tiene servicios componibles y totalmente administrados:
Tiempo de ejecución para implementación de agentes segura y sin servidor Memoria para retención de contexto a corto y largo plazo Puerta de enlace para acceso seguro a herramientas transformando API y funciones de AWS Lambda en herramientas compatibles con agentes y conectándose a servidores Model Context Protocol (MCP) existentes Identidad para gestión segura de identidad y acceso de agentes Intérprete de código para ejecución segura de código en entornos sandbox Navegador para interacciones web rápidas y seguras Observabilidad para obtener información operativa integral para rastrear, depurar y monitorear el rendimiento de los agentes Evaluaciones para inspeccionar continuamente la calidad de los agentes según el comportamiento del mundo real Política para mantener a los agentes dentro de límites definidos
Estos servicios, diseñados para funcionar de forma independiente o en conjunto, abstraen la complejidad de crear, implementar y operar agentes sofisticados mientras trabajan con marcos o modelos de código abierto que brindan seguridad y confiabilidad de nivel empresarial.
Evaluación, creación de perfiles y optimización de agentes con NeMo Agent Toolkit
NVIDIA NeMo Agent Toolkit es un marco de código abierto diseñado para ayudar a los desarrolladores a crear, perfilar y optimizar agentes de IA independientemente de su marco subyacente. Su enfoque independiente del marco significa que funciona a la perfección con Strands Agents, LangChain, LlamaIndex, CrewAI y marcos empresariales personalizados. Además, diferentes marcos pueden interoperar cuando están conectados en NeMo Agent Toolkit.
El generador de perfiles del kit de herramientas proporciona un análisis completo del flujo de trabajo de los agentes que rastrea el uso de tokens, los tiempos, la latencia específica del flujo de trabajo, el rendimiento y los tiempos de ejecución para agentes y herramientas individuales, lo que permite mejoras de rendimiento específicas. Construido sobre el arnés de evaluación del kit de herramientas, incluye evaluadores específicos de recuperación de generación aumentada (RAG) (como precisión de respuesta, relevancia del contexto, solidez de la respuesta y trayectoria del agente) y admite evaluadores personalizados para casos de uso especializados, lo que permite una optimización del rendimiento específica. El optimizador de hiperparámetros automatizado perfila y descubre sistemáticamente configuraciones óptimas para parámetros como temperatura, top_p y max_tokens mientras maximiza la precisión, la conexión a tierra, la relevancia del contexto y minimiza el uso de tokens, la latencia y también optimiza para otras métricas personalizadas. Este enfoque automatizado perfila los flujos de trabajo completos de sus agentes, identifica cuellos de botella y descubre combinaciones óptimas de parámetros que el ajuste manual podría pasar por alto. La calculadora inteligente de tamaño de GPU del kit de herramientas alivia las conjeturas al simular escenarios de latencia y concurrencia del agente y predecir requisitos precisos de infraestructura de GPU para la implementación de producción.
La integración de observabilidad del kit de herramientas se conecta con servicios de monitoreo populares, incluidos Arize Phoenix, Weights & Biases Weave, Langfuse y sistemas compatibles con OpenTelemetry, como Amazon Bedrock AgentCore Observability, creando un circuito de retroalimentación continua para la optimización y el mantenimiento continuos.
Implementación en el mundo real
Este ejemplo demuestra un agente basado en conocimiento que recupera y sintetiza información de las URL web para responder las consultas de los usuarios. Creada con Strands Agents con NeMo Agent Toolkit integrado, la solución está en contenedores para una implementación rápida en Amazon Bedrock AgentCore Runtime y aprovecha los servicios de Bedrock AgentCore, como AgentCore Observability. Además, los desarrolladores tienen la flexibilidad de integrarse con modelos totalmente administrados en Amazon Bedrock, modelos alojados en Amazon SageMaker AI, modelos en contenedores en Amazon Elastic Kubernetes Service (Amazon EKS) u otros puntos finales de API modelo. La arquitectura general está diseñada para un flujo de trabajo optimizado, pasando de la definición y optimización del agente a la contenedorización y la implementación escalable.
El siguiente diagrama de arquitectura ilustra un agente creado con Strands Agents que integra NeMo Agent Toolkit implementado en Amazon Bedrock AgentCore.
Desarrollo y evaluación de agentes.
Comience definiendo su agente y flujos de trabajo en Strands Agents, luego envuélvalos con NeMo Agent Toolkit para configurar componentes como un modelo de lenguaje grande (LLM) para inferencia y herramientas. Consulte el ejemplo de integración de Strands Agents y NeMo Agent Toolkit en GitHub para obtener una guía de configuración detallada. Después de configurar su entorno, valide la lógica de su agente ejecutando un único flujo de trabajo desde la línea de comando con un mensaje de ejemplo:
La siguiente es la salida del terminal truncada:
En lugar de ejecutar un único flujo de trabajo y salir, para simular un escenario del mundo real, puede activar un servidor API de larga duración capaz de manejar solicitudes simultáneas con el comando de servicio:
La siguiente es la salida del terminal truncada:
El agente ahora se ejecuta localmente en el puerto 8080. Para interactuar con el agente, abra una nueva terminal y ejecute el siguiente comando cURL. Esto generará una salida similar al paso de ejecución nat anterior, pero el agente se ejecuta continuamente como un servicio persistente en lugar de ejecutarse una vez y salir. Esto simula el entorno de producción donde Amazon Bedrock AgentCore ejecutará el agente como un servicio en contenedores:
La siguiente es la salida del terminal truncada:
Perfiles de agentes y supervisión del rendimiento del flujo de trabajo
Con el agente en ejecución, el siguiente paso es establecer una línea base de desempeño. Para ilustrar la profundidad de la información disponible, en este ejemplo, utilizamos un NIM Llama 3.3 70B Instruct autoadministrado en una instancia P4de.24xlarge de Amazon Elastic Compute Cloud (Amazon EC2) con tecnología de GPU NVIDIA A100 Tensor Core (GPU 8xA100 de 80 GB) que se ejecutan en Amazon EKS. Usamos el comando nat eval para evaluar el agente y generar el análisis:
nat eval –config_file ejemplos/frameworks/strands_demo/configs/eval_config.yml
La siguiente es la salida del terminal truncada:
El comando genera artefactos detallados que incluyen archivos JSON por métrica de evaluación (como precisión, fundamento, relevancia y precisión de trayectoria) que muestran puntuaciones de 0 a 1, seguimientos de razonamiento, contextos recuperados y promedios agregados. La información adicional en los artefactos generados incluye resultados de flujo de trabajo, tablas estandarizadas, seguimientos de perfiles y resúmenes compactos para latencia y eficiencia de tokens. Este barrido multimétrico proporciona una visión holística de la calidad y el comportamiento de los agentes. La evaluación destaca que, si bien el agente logró puntuaciones consistentes en su fundamento (lo que significa que las respuestas estaban respaldadas de manera confiable por las fuentes), todavía existe una oportunidad de mejorar la relevancia de la recuperación. La salida del seguimiento del perfil contiene latencia, rendimiento y tiempo de ejecución específicos del flujo de trabajo en intervalos de confianza del 90 %, 95 % y 99 %. El comando genera un diagrama de Gantt del flujo del agente y un análisis de pila anidada para identificar exactamente dónde existen los cuellos de botella, como se ve en la siguiente figura. También informa picos de simultaneidad y eficiencia de tokens para que pueda comprender con precisión cómo el escalamiento afecta el uso rápido y de finalización.
Durante la creación de perfiles, nat genera ocho flujos de trabajo de agentes simultáneos (que se muestran en barras naranjas en el gráfico), que es la configuración de simultaneidad predeterminada durante la evaluación. La latencia de p90 para el flujo de trabajo que se muestra es de aproximadamente 58,9 segundos. Fundamentalmente, los datos confirmaron que la generación de respuestas fue el principal cuello de botella, ya que los segmentos más largos del LLM tardaron aproximadamente 61,4 segundos. Mientras tanto, los gastos generales no relacionados con el LLM se mantuvieron mínimos. Las solicitudes HTTP promediaron solo entre 0,7 y 1,2 segundos y el acceso a la base de conocimientos fue insignificante. Con este nivel de granularidad, ahora puede identificar y optimizar cuellos de botella específicos en los flujos de trabajo de los agentes.
Optimización del rendimiento del agente
Después de crear el perfil, refine los parámetros del agente para equilibrar la calidad, el rendimiento y el costo. El ajuste manual de las configuraciones de LLM, como la temperatura y top_p, suele ser un juego de conjeturas. El NeMo Agent Toolkit convierte esto en una ciencia basada en datos. Puede utilizar el optimizador integrado para realizar un barrido sistemático en su espacio de búsqueda de parámetros:
optimización nat –config_file ejemplos/frameworks/strands_demo/configs/optimizer_config.yml
La siguiente es la salida del terminal truncada:
Este comando inicia un barrido automatizado en los parámetros clave de LLM, como temperatura, top_p y max_tokens, tal como se define en el espacio de búsqueda de configuración (en este caso optimizador_config.yml). El optimizador ejecuta 20 pruebas con tres repeticiones cada una, utilizando métricas de evaluación ponderadas para descubrir automáticamente la configuración óptima del modelo. El optimizador puede tardar entre 15 y 20 minutos en ejecutar 20 pruebas.
El conjunto de herramientas evalúa cada parámetro establecido frente a una puntuación multiobjetivo ponderada, con el objetivo de maximizar la calidad (por ejemplo, precisión, conexión a tierra o uso de herramientas) y al mismo tiempo minimizar el costo del token y la latencia. Al finalizar, genera artefactos de rendimiento detallados y tablas de resumen para que pueda identificar y seleccionar rápidamente la configuración óptima para la producción. La siguiente es la configuración del optimizador de hiperparámetros:
En este ejemplo, NeMo Agent Toolkit Optimize evaluó sistemáticamente las configuraciones de parámetros e identificó la temperatura ≈ 0,7, top_p ≈ 1,0 y max_tokens ≈ 6k (6144) como configuración óptima que produce la mayor precisión en 20 pruebas. Esta configuración proporcionó una mejora de precisión del 35 % con respecto a la línea de base y, al mismo tiempo, logró ganancias de eficiencia de token del 20 % en comparación con la configuración 8192 max_tokens, maximizando tanto el rendimiento como la rentabilidad para estas implementaciones de producción.
El optimizador traza curvas de Pareto por pares, como se muestra en los siguientes cuadros comparativos de matrices por pares, para analizar las compensaciones entre diferentes parámetros. El gráfico de coordenadas paralelas, que sigue al cuadro de comparación de la matriz, muestra pruebas óptimas (líneas rojas) que logran puntuaciones de alta calidad (0,8–1,0) en términos de precisión, fundamento y relevancia, al tiempo que compensan cierta eficiencia a medida que el uso de tokens y la latencia caen a 0,6–0,8 en la escala normalizada. La matriz por pares confirma fuertes correlaciones entre las métricas de calidad y revela el consumo real de tokens agrupado estrechamente alrededor de 2500 a 3100 tokens en todas las pruebas. Estos resultados indican que es posible obtener mayores ganancias en precisión y eficiencia de los tokens mediante una ingeniería rápida. Esto es algo que los equipos de desarrollo pueden lograr utilizando las capacidades de optimización rápida de NeMo Agent Toolkit, lo que ayuda a reducir los costos y maximizar el rendimiento.
La siguiente imagen muestra la comparación de matrices por pares:
La siguiente imagen muestra el trazado de coordenadas paralelas:
Infraestructura de GPU de producción de tamaño adecuado
Una vez que su agente esté optimizado y haya finalizado el tiempo de ejecución o la configuración de inferencia, puede centrarse en evaluar la infraestructura de implementación de su modelo. Si autoadministra la implementación de su modelo en una flota de instancias EC2 con GPU, entonces uno de los aspectos más difíciles de mover agentes a producción es predecir exactamente qué recursos informáticos son necesarios para admitir un caso de uso objetivo y usuarios simultáneos sin exceder el presupuesto ni causar tiempos de espera. La calculadora de tamaño de GPU de NeMo Agent Toolkit aborda este desafío utilizando el perfil de rendimiento real de su agente para determinar el tamaño de clúster óptimo para objetivos de nivel de servicio (SLO) específicos, lo que permite un tamaño correcto que alivia la compensación entre rendimiento y costo. Para generar un perfil de tamaño, ejecute la calculadora de tamaño en un rango de niveles de simultaneidad (por ejemplo, de 1 a 32 usuarios simultáneos):
La ejecución de esto en nuestra instancia EC2 P4de.24xlarge de referencia con tecnología de GPU NVIDIA A100 Tensor Core que se ejecutan en Amazon EKS para un NIM Llama 3.3 70B Instruct produjo el siguiente análisis de capacidad:
Como se muestra en el siguiente gráfico, la simultaneidad calculada aumenta casi linealmente tanto con la latencia como con el tiempo de ejecución de un extremo a otro; la latencia LLM de P95 y el tiempo de ejecución del flujo de trabajo demuestran ajustes de tendencia casi perfectos (R² ≈ 0,977/0,983). Cada solicitud simultánea adicional introduce una penalización de latencia predecible, lo que sugiere que el sistema opera dentro de una zona de capacidad lineal donde el rendimiento se puede optimizar ajustando la tolerancia de latencia.
Con las métricas de tamaño capturadas, puede estimar el tamaño del clúster de GPU para una simultaneidad y latencia específicas. Por ejemplo, para admitir 25 usuarios simultáneos con un tiempo de ejecución de flujo de trabajo objetivo de 50 segundos, puede ejecutar la calculadora:
Este flujo de trabajo analiza las métricas de rendimiento actuales y genera una recomendación de recursos. En nuestro escenario de ejemplo, la herramienta calcula que para cumplir con los estrictos requisitos de latencia para 25 usuarios simultáneos, se requieren aproximadamente 30 GPU según la siguiente fórmula:
El siguiente es el resultado de la estimación del tamaño:
Implementación del agente de producción en Amazon Bedrock AgentCore
Después de evaluar, crear perfiles y optimizar su agente, impleméntelo en producción. Aunque ejecutar el agente localmente es suficiente para las pruebas, la implementación empresarial requiere un tiempo de ejecución del agente que ayude a brindar seguridad, escalabilidad y administración sólida de la memoria sin la sobrecarga de administrar la infraestructura. Aquí es donde brilla Amazon Bedrock AgentCore Runtime: proporciona un tiempo de ejecución de agente sin servidor de nivel empresarial sin la sobrecarga de infraestructura. Consulte la guía de implementación paso a paso en el repositorio del kit de herramientas de NeMo Agent. Al empaquetar su agente optimizado en un contenedor e implementarlo en Bedrock AgentCore Runtime sin servidor, eleva su agente prototipo a una aplicación resistente para tareas de larga duración y solicitudes de usuarios simultáneos. Después de implementar el agente, la visibilidad se vuelve crítica. Esta integración crea una experiencia de observabilidad unificada, transformando la ejecución de caja negra opaca en visibilidad profunda. Obtiene seguimientos, intervalos y desgloses de latencia exactos para cada interacción en producción, integrados en Bedrock AgentCore Observability mediante OpenTelemetry.
La siguiente captura de pantalla muestra el panel de Amazon CloudWatch que muestra los seguimientos y tramos de Amazon Bedrock AgentCore, visualizando la ruta de ejecución y la latencia del agente Strands implementado.
Los servicios de Amazon Bedrock AgentCore van mucho más allá de la gestión y la observabilidad del tiempo de ejecución del agente. Sus agentes implementados pueden utilizar sin problemas servicios adicionales de Bedrock AgentCore, incluidos Amazon Bedrock AgentCore Identity para autenticación y autorización, Amazon Bedrock AgentCore Gateway para acceso a herramientas, Amazon Bedrock AgentCore Memory para reconocimiento del contexto, Amazon Bedrock AgentCore Code Interpreter para ejecución segura de código y Amazon Bedrock AgentCore Browser para interacciones web, para crear agentes listos para la empresa.
Conclusión
Los agentes de IA de producción necesitan visibilidad del rendimiento, optimización e infraestructura confiable. Para el caso de uso de ejemplo, esta integración se realizó en los tres frentes: lograr ganancias de eficiencia de token del 20 %, mejoras de precisión del 35 % para el caso de uso de ejemplo e infraestructura de GPU optimizada en rendimiento calibrada para la simultaneidad objetivo. Al combinar Strands Agents para el desarrollo y la orquestación de agentes fundamentales, NVIDIA NeMo Agent Toolkit para la creación de perfiles profundos de agentes, optimización y dimensionamiento adecuado de la infraestructura de GPU de producción, y Amazon Bedrock AgentCore para una infraestructura de agentes segura y escalable, los desarrolladores pueden tener una solución de extremo a extremo que ayuda a proporcionar resultados predecibles. Ahora puede crear, evaluar, optimizar e implementar agentes a escala en AWS con esta solución integrada. Para comenzar, consulte el ejemplo de integración de Strands Agents y NeMo Agent Toolkit y la implementación de Strands Agents y NeMo Agent Toolkit en Amazon Bedrock AgentCore Runtime.
Sobre los autores
Kosti Vasilakakis es PM principal en AWS en el equipo de Agentic AI, donde ha dirigido el diseño y desarrollo 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 científico de datos. Fuera del trabajo, crea automatizaciones de productividad personal, juega tenis y disfruta de la vida con su esposa e hijos.
Sagar Murthy es un líder agente de IA GTM en AWS, donde colabora con socios modelo de fundación fronteriza, marcos agentes, nuevas empresas y clientes empresariales para evangelizar la IA y las innovaciones de datos, las soluciones de código abierto y escalar asociaciones impactantes. Con experiencias de colaboración que abarcan datos, nube e inteligencia artificial, aporta una combinación de experiencia en soluciones técnicas y enfoque en resultados comerciales para deleitar a los desarrolladores y clientes.
Chris Smith es arquitecto de soluciones en AWS y se especializa en automatización impulsada por IA y orquestación de agentes de IA empresarial. Con más de una década de experiencia en la arquitectura de soluciones en la intersección de la IA generativa, la computación en la nube y la integración de sistemas, ayuda a las organizaciones a diseñar e implementar sistemas de agentes que transforman las tecnologías emergentes en resultados comerciales mensurables. Su trabajo abarca arquitectura técnica, implementación que prioriza la seguridad y liderazgo de equipos multifuncionales.
Ranjit Rajan es arquitecto de soluciones senior en NVIDIA, donde ayuda a los clientes a diseñar y crear soluciones que abarcan IA generativa, IA agente y canales de procesamiento de datos multimodales acelerados para el entrenamiento previo y el ajuste de los modelos básicos.
Abdullahi Olaoye es arquitecto senior de soluciones de IA en NVIDIA y se especializa en la integración de bibliotecas, marcos y productos de IA de NVIDIA con servicios de IA en la nube y herramientas de código abierto para optimizar la implementación, la inferencia y los flujos de trabajo de IA generativos del modelo de IA. Colabora con AWS para mejorar el rendimiento de las cargas de trabajo de IA e impulsar la adopción de soluciones de IA generativa e IA impulsadas por NVIDIA.
Abhishek Sawarkar es gerente de producto en el equipo de NVIDIA AI Enterprise que trabaja en Agentic AI. Se centra en la estrategia de producto y la hoja de ruta para integrar la biblioteca Agentic AI en plataformas de socios y mejorar la experiencia del usuario en informática acelerada para agentes AI.