Cómo migrar un agente low-code a ADK

Resumen

Migrar agentes de low-code a ADK te permite tomar un agente visual que ya funciona y reconstruirlo directamente en código para tener control total sobre su comportamiento. Si vienes de crear agentes en Agent Platform y quieres profesionalizar tu flujo, aquí verás cómo estructurar carpetas, definir subagentes y desplegar todo sobre Google Cloud.

Esta guía es para quienes ya configuraron un agente funcional en la clase anterior y ahora buscan replicarlo con el Agent Development Kit (ADK). El objetivo es simple: que tu agente en código haga exactamente lo mismo que el de low-code, pero con la puerta abierta a extenderlo después con tools.

Cómo organizo las carpetas del proyecto en ADK

El primer paso es preparar la estructura dentro de la carpeta app. Aquí creas dos carpetas nuevas que ordenan todo el proyecto [00:26].

  • Agents: donde vivirán tu agente principal y cada subagente.
  • Tools: reservada para las funciones extendidas que agregarás más adelante.

Los nombres no son obligatorios, pero conviene mantenerlos porque la mayoría de agentes que encontrarás usan exactamente estos [00:41]. Es como respetar la convención de nombres de una librería: nada te obliga, pero todo el mundo te entiende mejor.

¿Qué es ADK? Es el Agent Development Kit, una plataforma open source para construir agentes en código y desplegarlos sobre Google Cloud, a diferencia del enfoque visual de low-code.

Cómo traigo mi agente principal desde low-code

El agente recepcionista de low-code es el equivalente al agente root en ADK [01:23]. Para migrarlo, vas a la consola de Google Cloud, buscas Agent Platform, entras a Studio, Agentes, y abres el agente que ya creaste.

Desde ahí copias su descripción y sus instrucciones, y las pegas en tu agente primario en código. Un detalle útil: ADK acepta instrucciones en cualquier idioma, así que aunque tu configuración original estaba en inglés, puedes trabajar en español sin problema [01:44].

Por comodidad, al pegar las instrucciones eliminas las comillas dobles y usas triple comilla para envolver todo el plan [02:06]. Así evitas que los saltos de línea rompan el texto.

Cómo defino los subagentes y los conecto al principal

Cada subagente vive como un fichero dentro de la carpeta Agents. El primero que construyes es el agente de pedidos [02:24].

El proceso se repite para cada uno:

  1. Haces la misma importación y generas el mismo tipo de agente.
  2. Reemplazas descripción e instrucciones con las del agente original.
  3. Cambias el nombre, por ejemplo a Pedidos, porque así el agente principal detecta a sus subagentes.
  4. Creas un fichero init vacío para que Python reconozca la carpeta [03:02].

Después conectas el subagente al principal. Al final del prompt agregas la variable subagents e importas el PedidosAgent [03:19]. Antigravity facilita la importación directa, y verás que el import apunta a tu aplicación, carpeta Agents, fichero Pedidos.

El último ajuste es decirle al agente primario que ahora tiene un subagente disponible. Ese texto debe coincidir exactamente con el name que le entregaste, y la recomendación es dejar los nombres de subagentes entre comillas simples porque funciona mucho mejor [03:52].

¿Cómo sabe el agente principal a qué subagente transferir? Lo hace por el nombre del subagente. Si el texto en sus agentes disponibles coincide con el name definido, la plataforma enruta la solicitud sola.

Cómo elijo el modelo Gemini correcto

Todos los agentes arrancan usando Gemini 3.5 Flash, pero los modelos cambian todo el tiempo [04:53]. Para revisarlos, entras a la URL del material, buscas los modelos globales y eliges uno disponible.

Al momento de la clase, el 3.1 Pro está en preview, así que ese es el que se usa. Si detectas que ya no existe, simplemente eliges otro del listado [05:09]. Puedes asignar 3.1 Pro a los subagentes que necesiten más capacidad, como devoluciones o escalamiento [05:29].

Un tip práctico: para evitar errores de importación molestos, agregas un prefijo que hace ignorar ese import específico, porque la librería ya está en tu ambiente virtual [04:26].

Cómo despliego mi agente en Google Cloud

Antes de desplegar, configuras dos variables de entorno clave [06:41]:

  • project ID: tu mismo identificador de proyecto.
  • location ID: la región donde vivirá el agente, en este caso US Central 1, equivalente a Iowa.

Y aquí viene un punto que confunde a muchos: la región donde usas los modelos y la región donde despliegas son cosas distintas. En low-code estabas obligado a usar US West 1, pero ahora usas modelos globales y despliegas a US Central 1 sin conflicto [07:06].

Después generas un fichero requirements.txt en la raíz con las librerías que permiten desplegar una plataforma open source como ADK sobre Google Cloud [07:33]. Lo instalas con install -r app requirements y luego lanzas el despliegue:

bash adk deploy agent_engine --project TU_PROYECTO --region TU_UBICACION --display_name NOMBRE app

El agent_engine es el nombre anterior de Agent Platform, y app es la carpeta a desplegar [08:20]. El proceso tarda entre tres y cuatro minutos [08:43].

Qué hago si el despliegue falla

A veces el despliegue arroja un error, pero suele decirte qué hacer. Lo más común es reautenticarte: abres la URL, haces login con tu cuenta y vuelves a correr el comando [08:56]. En otros casos basta con reintentar sin cambiar nada.

Cada despliegue genera un agente independiente [09:37]. Por eso, si probaste varias veces, verás varias implementaciones en Agent Platform. Puedes borrar las versiones más antiguas para mantener el orden.

Por qué las tools son el siguiente paso natural

Con esto ya tienes un agente low-code traducido completamente a ADK, y por ahora ambos hacen lo mismo. La gran diferencia llega con las tools, que son el mundo extendido de los agentes [10:10].

Con ellas puedes construir funciones, conectarte a bases de datos, consultar un RAG publicado en Google u otra nube, o sumar cualquier capacidad extra. Ese es el salto que convierte un agente funcional en uno realmente profesional.

¿Ya migraste tu primer agente a ADK? Cuéntame en los comentarios qué región elegiste para desplegar y qué modelo Gemini te dio mejores resultados.