[{"data":1,"prerenderedAt":29},["ShallowReactive",2],{"article-data-curso-gcp-google-adk-20":3},{"content":4,"date":5,"image":6,"sideArticles":7},"\u003C!DOCTYPE html>\r\n\u003Chtml lang=\"es\">\r\n\r\n\u003Chead>\r\n    \u003Cmeta charset=\"UTF-8\">\r\n    \u003Cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n    \u003Cmeta name=\"description\"\r\n        content=\"Laboratorio 20: Aprende a empaquetar y desplegar tus agentes de IA de forma profesional usando agents-cli. Configura límites de recursos y escalado en Google Cloud Run.\">\r\n    \u003Cmeta name=\"keywords\"\r\n        content=\"agents-cli, Google Cloud Run, Cloud Build, Artifact Registry, Deploy IA, DevOps IA, agent.yaml, Contenedores, Python\">\r\n    \u003Cmeta name=\"author\" content=\"Eduardo Martínez Agrelo\">\r\n    \u003Ctitle>Empaquetado y Deploy Customizado | Curso Agentes IA\u003C/title>\r\n    \u003Cstyle>\r\n        body {\r\n            font-family: sans-serif;\r\n            line-height: 1.6;\r\n        }\r\n\r\n        h1,\r\n        h2,\r\n        h3 {\r\n            color: #333;\r\n        }\r\n\r\n        ul {\r\n            list-style-type: disc;\r\n            margin-left: 20px;\r\n        }\r\n\r\n        code {\r\n            background-color: #f4f4f4;\r\n            padding: 2px 5px;\r\n            border-radius: 3px;\r\n            font-family: monospace;\r\n        }\r\n    \u003C/style>\r\n\u003C/head>\r\n\r\n\u003Cbody>\r\n    \u003Ch1>Empaquetado y Deploy Customizado (La Infraestructura como Código)\u003C/h1>\r\n\r\n    \u003Cp>\u003Cstrong>Autor:\u003C/strong> \u003Ca href=\"https://www.youtube.com/@EduardoMartinezAgrelo\" target=\"_blank\">Eduardo Martínez\r\n            Agrelo\u003C/a>\u003C/p>\r\n\r\n    \u003Cp>Hasta ahora hemos ejecutado nuestros agentes en un entorno de pruebas local. Sin embargo, para dar el salto\r\n        definitivo a producción, debemos definir los recursos de sistema que nuestro agente necesitará en la nube. En\r\n        este laboratorio utilizaremos el manifiesto de \u003Cstrong>agents-cli\u003C/strong> para aplicar el patrón de\r\n        \u003Cstrong>Infraestructura como Código (IaC)\u003C/strong> y configurar nuestro despliegue en Google Cloud Run de forma\r\n        profesional.\r\n    \u003C/p>\r\n\r\n    \u003Ch2>El Manifiesto agent.yaml\u003C/h2>\r\n\r\n    \u003Cp>El archivo \u003Ccode>agent.yaml\u003C/code> es el contrato oficial que especifica cómo se comportará nuestro contenedor\r\n        una vez esté corriendo en los servidores de Google:\u003C/p>\r\n    \u003Cul>\r\n        \u003Cli>\u003Cstrong>Límites de Recursos:\u003C/strong> Especificamos cuánta memoria (RAM) y procesadores (CPU) asignamos a\r\n            nuestro agente (ej. 1GB de RAM para procesar el SDK de BigQuery cómodamente).\u003C/li>\r\n        \u003Cli>\u003Cstrong>Políticas de Escalado:\u003C/strong> Definimos la concurrencia máxima de peticiones que cada contenedor\r\n            puede manejar simultáneamente antes de que Google Cloud deba clonarlo.\u003C/li>\r\n    \u003C/ul>\r\n\r\n    \u003Ch2>Automatización sin Dockerfiles: Buildpacks\u003C/h2>\r\n\r\n    \u003Cp>Uno de los mayores atractivos de \u003Ccode>agents-cli\u003C/code> es que elimina la necesidad de escribir y mantener\r\n        archivos Docker manuales para el empaquetado:\u003C/p>\r\n    \u003Cp>\u003Ccode>agents-cli deploy --project MI_PROYECTO\u003C/code>\u003C/p>\r\n    \u003Cul>\r\n        \u003Cli>\u003Cstrong>Cloud Build:\u003C/strong> El comando compila tu código usando Buildpacks de Google Cloud, detectando que\r\n            es un proyecto de Python y ADK de forma transparente.\u003C/li>\r\n        \u003Cli>\u003Cstrong>Artifact Registry:\u003C/strong> La CLI compila la imagen del contenedor directamente en el registro\r\n            seguro de Google Cloud, lista para ser servida.\u003C/li>\r\n    \u003C/ul>\r\n\r\n    \u003Ch2>Optimización de Presupuesto (Cold Starts)\u003C/h2>\r\n\r\n    \u003Cp>Configurar el escalado de forma inteligente nos protege contra sorpresas financieras desagradables en nuestra\r\n        facturación:\u003C/p>\r\n    \u003Cul>\r\n        \u003Cli>\u003Cstrong>Escalado a Cero (min_instances: 0):\u003C/strong> Si no hay peticiones, Google apaga nuestro servidor por\r\n            completo para no generar gastos. El \"precio\" a pagar es un ligero retraso de unos segundos en la primera\r\n            consulta (Cold Start).\u003C/li>\r\n        \u003Cli>\u003Cstrong>Techo de Escalado (max_instances: 5):\u003C/strong> Establecemos un límite de seguridad estricto para\r\n            evitar picos de facturación inesperados si nuestro agente recibe tráfico masivo de forma repentina.\u003C/li>\r\n    \u003C/ul>\r\n\r\n    \u003Ch2>Implementación práctica\u003C/h2>\r\n\r\n    \u003Cp>En este laboratorio, abriremos el manifiesto de configuración \u003Ccode>agent.yaml\u003C/code> en nuestro proyecto.\r\n        Definiremos los recursos del runtime, inyectaremos de forma segura las variables de entorno de nuestro proyecto\r\n        de BigQuery y ejecutaremos el comando \u003Ccode>agents-cli deploy\u003C/code>. Observarás todo el proceso de empaquetado\r\n        y subida en tiempo real y probaremos la API pública recién generada a través de la documentación interactiva en\r\n        Swagger. Tu agente de datos ya es un microservicio global operando en los centros de datos de Google.\u003C/p>\r\n\r\n    \u003Ch2>Conclusión: Tu IA escalable ya está en el mundo real\u003C/h2>\r\n    \u003Cp>Has aprendido que construir software de IA implica entender la infraestructura que lo sustenta. Ya tienes un\r\n        agente analista operando de forma global en la nube. Con el servicio publicado, el último paso de este viaje\r\n        profesional es aprender a monitorizar su rendimiento y limpiar de forma segura nuestros recursos mediante el\r\n        proceso de Teardown.\u003C/p>\r\n\u003C/body>\r\n\r\n\u003C/html>","May 12, 2026","https://storage.googleapis.com/mp-blog/images/curso-gcp-google-adk-20.jpg",[8,14,19,24],{"id":9,"title":10,"description":11,"image":12,"date":13},"curso-gcp-apache-spark-01","Spark: Infraestructura como Código con Terraform | Curso Spark, Scala y Terraform","Aprende a desplegar clústeres de Big Data profesionalmente. Domina Terraform para crear infraestructura como código (IaC) en Google Cloud y automatiza tu entorno de Dataproc para Spark.","https://storage.googleapis.com/mp-blog/images/curso-gcp-apache-spark-01.jpg","March 12, 2026",{"id":15,"title":16,"description":17,"image":18,"date":13},"curso-gcp-apache-spark-02","Spark: Ingesta (Raw to Bronze) y Formatos Columnares | Curso Spark, Scala y Terraform","Domina la ingesta de datos con Spark. Aprende a convertir JSONs pesados en formato Parquet, optimiza tu almacenamiento en un 85% y domina los esquemas estrictos con Scala.","https://storage.googleapis.com/mp-blog/images/curso-gcp-apache-spark-02.jpg",{"id":20,"title":21,"description":22,"image":23,"date":13},"curso-gcp-apache-spark-03","Spark: Limpieza y Calidad (Bronze to Silver) | Curso Spark, Scala y Terraform","Domina la limpieza de datos en Spark. Aprende a usar Scala para implementar la capa Silver (Plata) de tu arquitectura Medallón, utilizando Case Classes para mayor seguridad.","https://storage.googleapis.com/mp-blog/images/curso-gcp-apache-spark-03.jpg",{"id":25,"title":26,"description":27,"image":28,"date":13},"curso-gcp-apache-spark-04","Spark: Analítica Avanzada (Silver to Gold) | Curso Spark, Scala y Terraform","Domina el Análisis Avanzado con Spark. Aprende a calcular métricas de negocio con Window Functions y a extraer el Top 3 de canciones por país y día para tu capa Gold.","https://storage.googleapis.com/mp-blog/images/curso-gcp-apache-spark-04.jpg",1778604634360]