Volver al blog

IA para principiantesGuía

Por qué los agentes de IA usan tantos tokens (un ejemplo de 20 pasos)

Un agente de IA reenvía su historial, su lista de herramientas y la salida de las herramientas en cada paso. Mira adónde van los tokens, con un ejemplo resuelto de 20 pasos.

Por CheapTokens TeamPublicado el 6 min de lectura

Tarjeta de chat: ¿una pregunta, cientos de miles de tokens? Cada paso reenvía todo el historial.
En esta página
  1. Qué es un agente, en una imagen
  2. Tres cosas viajan en cada paso
  3. Una ejecución de 20 pasos, contada
  4. Dónde recortar: cuatro hábitos
  5. Cuenta tu propia ejecución

Le haces una pregunta a un agente, trabaja durante unos minutos y la página de uso muestra cientos de miles de tokens. Nada está roto. Un agente es un bucle, y cada vuelta del bucle reenvía todo lo dicho hasta el momento (la lista de herramientas, el historial, lo que sea que hayan devuelto las herramientas) como tokens de entrada. La respuesta que escribe es diminuta. Lo que vuelve a leer una y otra vez no lo es.

Qué es un agente, en una imagen#

Un modelo de chat responde una vez. Un agente es el mismo modelo dentro de un bucle con herramientas: leer un archivo, buscar en la web, ejecutar un comando. Y el modelo no recuerda nada entre llamadas. Imagina un asistente que olvida todo cada vez que cuelga: cada vez que vuelve a llamar, lees las notas desde el principio y luego añades una línea. Así es como funciona la API.

La documentación de uso de herramientas de Anthropic (consultada el 26 de octubre de 2026) describe el bucle así:

  1. Tu aplicación envía el mensaje del usuario y la lista de herramientas.
  2. El modelo responde con stop_reason: "tool_use" y un bloque tool_use: qué herramienta, con qué argumentos.
  3. Tu aplicación ejecuta la herramienta y envía una segunda solicitud. Contiene los mensajes anteriores, la llamada a herramienta del modelo, un bloque tool_result y la misma lista de herramientas.
  4. El modelo responde, o pide otra herramienta, y el bucle vuelve a girar.

La misma página dice que las solicitudes de uso de herramientas se facturan sobre el total de entrada enviado, incluido el parámetro tools, más la salida. Así que el paso 3 nunca es "solo la parte nueva": es toda la conversación de nuevo.

text
Request 1  tools + system + task
Request 2  tools + system + task + call 1 + result 1
Request 3  tools + system + task + call 1 + result 1 + call 2 + result 2
...

Es el mismo mecanismo que en por qué un chat largo cuesta más, solo que más rápido. Un chat crece un mensaje cuando escribes. Un agente crece dos bloques en cada paso, y nadie escribe nada.

Tres cosas viajan en cada paso#

La lista de herramientas. Nombres, descripciones y esquemas de parámetros de cada herramienta entran en cada solicitud, incluso cuando el modelo no usa ninguna en este turno. La documentación añade un pequeño extra: con las herramientas activadas, la API añade su propio prompt de uso de herramientas, 286 tokens en Claude Sonnet 5.5, Opus 5.5 y Haiku 5.5, y otros modelos tienen otros recuentos.

El historial. Tu tarea, las llamadas a herramientas anteriores del modelo, sus notas.

La salida de las herramientas. Esta es la traicionera. Un archivo que leyó el agente, una página de resultados de búsqueda, un registro de pruebas: una vez que aterriza en el historial, se paga de nuevo en cada paso posterior.

Un token es un pequeño fragmento de texto, más o menos una palabra corta o parte de una, y cada una de estas tres cosas se cuenta en ellos.

Una ejecución de 20 pasos, contada#

Supón que ejecutas un pequeño agente de programación con tres herramientas (leer un archivo, buscar, ejecutar pruebas) y le das una tarea que requiere 20 pasos. Toma estas suposiciones:

  • definiciones de herramientas: 1.500 tokens, prompt del sistema: 500, tu tarea: 200, así que cada solicitud empieza con 2.200 tokens;
  • en cada paso el modelo escribe una llamada a herramienta de 150 tokens, y la herramienta devuelve 800 tokens;
  • ambas se unen al historial, así que cada paso añade 950 tokens a la siguiente solicitud.
Tamaño de entrada de una solicitud en los pasos 1, 5, 10 y 20 de la ejecución del agente: 2.200, 6.000, 10.750 y 20.250 tokens, mientras que la salida se mantiene en 150 por paso
Los tokens de entrada por solicitud crecen con cada paso; la salida se mantiene en 150 tokens por paso (suposiciones anteriores)

Para obtener el total de la ejecución, suma las 20 solicitudes. La base de 2.200 se envía 20 veces, y las rondas se arrastran a los pasos posteriores: el paso 1 no arrastra ninguna, el paso 2 una, y así hasta 19, que son 190 rondas en total.

20 × 2.200 = 44.000

950 × 190 = 180.500

44.000 + 180.500 = 224.500 tokens de entrada, y 20 × 150 = 3.000 tokens de salida.

El agente escribió 3.000 tokens y leyó 224.500. Los tokens de salida cuestan más cada uno que los de entrada (ver tokens de entrada vs salida), pero hay tan pocos que el lado de la entrada sigue decidiendo la factura. Aquí está esa ejecución con los precios actuales:

Modelo Costo OpenRouter
GLM-5.3-Flash $0.0046 $0.0095
DeepSeek-V4-Flash $0.0037 $0.0111
MiniMax-M2.7 $0.0117 $0.071

224.500 tokens de entrada y 3000 tokens de salida en total. Los precios por 1M de tokens son actuales y cambian junto con nuestras tarifas; la columna de OpenRouter muestra precios de referencia para la misma carga de trabajo.

En DeepSeek-V4-Flash una ejecución así sale por $0.0037, en GLM-5.3-Flash por $0.0046. Cien ejecuciones son 22.450.000 tokens de entrada y 300.000 de salida: $0.367 en DeepSeek-V4-Flash. La tabla anterior cuenta entrada y salida juntas, y en total los modelos de ahí salen más baratos que OpenRouter.

El número de pasos importa más de lo que parece. Una ejecución de 5 pasos con las mismas suposiciones:

5 × 2.200 = 11.000

950 × 10 = 9.500

11.000 + 9.500 = 20.500 tokens de entrada. Cuatro veces los pasos dieron unas once veces la entrada, porque cada paso nuevo también relee todos los antiguos.

Dónde recortar: cuatro hábitos#

El resultado de una herramienta es el lugar más fácil para ahorrar. Digamos que una ejecución de pruebas en el paso 3 devuelve un registro de 4.000 tokens. Luego lo reenvían las 17 solicitudes que siguen:

  • antes: 4.000 × 17 = 68.000 tokens de entrada arrastrados por ese único registro;
  • después, si la herramienta devuelve solo las 40 líneas relevantes (unos 400 tokens): 400 × 17 = 6.800.

Misma tarea, misma respuesta, una décima parte de la entrada de ese único resultado. Eso da cuatro hábitos:

  • Devuelve menos desde las herramientas. Líneas alrededor del error, no todo el registro; la función, no todo el archivo. Hay una versión más larga en mantener la salida de las herramientas fuera del contexto.
  • Dale menos herramientas al agente. Cada definición viaja en cada solicitud.
  • Limita los pasos y empieza una tarea nueva cuando el historial antiguo ya no importe.
  • Suma el uso de cada paso, y detén la ejecución en un presupuesto que hayas elegido de antemano. Para el lado de la estimación, ver cómo estimar el coste de un agente de IA.

Cuenta tu propia ejecución#

Cada respuesta informa cuántos tokens consumió y produjo, en su campo usage. Súmalos en todos los pasos y tendrás los números reales de tu agente en lugar de mis suposiciones. Un esbozo con el SDK de Python de OpenAI apuntando a CheapTokens (messages y tools son los de tu propio agente):

python
from openai import OpenAI

client = OpenAI(base_url="https://api.cheaptokens.dev/v1", api_key="YOUR_API_KEY")

total_in = total_out = 0
for step in range(20):  # your agent loop
    resp = client.chat.completions.create(
        model="deepseek-ai/DeepSeek-V4-Flash-0731",
        messages=messages,
        tools=tools,
    )
    total_in += resp.usage.prompt_tokens
    total_out += resp.usage.completion_tokens
    # ...run the tool, append the result to messages

print(total_in, total_out)

Los dos totales encajan directamente en la tabla de costes anterior. Para historiales largos como este, DeepSeek-V4-Flash te da una ventana de contexto de 380K y hasta 32.768 tokens de salida por respuesta, a un solo precio a cualquier hora; GLM-5.3-Flash tiene un contexto de 390K y hasta 8.192 tokens de salida. La configuración está en la documentación, el precio actual de cada modelo está en la página de precios, y el modelo tiene su propia página, DeepSeek barato.