Tokens por segundo: mide la velocidad real de un LLM

Aprende a medir los tokens por segundo de un LLM, la espera hasta el primer token y la latencia total para comparar proveedores con las tareas de tu aplicación.

Publicado el

Tokens por segundo: mide la velocidad real de un LLM

Al elegir un modelo, ten en cuenta cuánto espera el usuario, además de la cifra anunciada de tokens por segundo. Groq indica 500 tokens por segundo para OpenAI GPT-OSS 120B, pero ese dato del proveedor no te dice cuándo escuchará una respuesta quien llama. Mide cuánto tarda en empezar la salida, a qué ritmo llega el texto y cuánto tiempo pasa hasta que el resultado sirve para la tarea. Fuente: tabla de modelos compatibles de Groq.

¿Qué miden los tokens por segundo?

Los tokens de salida por segundo miden la rapidez con la que un LLM entrega los tokens generados después de recibir el primero. Un modelo de lenguaje de gran tamaño, o LLM, procesa el texto en forma de tokens: unidades que pueden ser palabras, fragmentos de palabras o signos de puntuación. Contar tokens no equivale a contar palabras de forma universal. La definición de Cerebras distingue expresamente ambos conceptos.

Imagina que vas a una biblioteca a recoger varios libros. El tiempo que esperas hasta que abren la puerta es una cosa; el ritmo al que te entregan los libros, otra. Ambos determinan cuándo puedes salir con todo lo que necesitas. Una entrega rápida no elimina la larga espera en la entrada.

En una aplicación, conviene medir cada intervalo por separado:

MétricaInicio y fin del intervaloPregunta que responde
Tiempo hasta el primer token, o TTFTDesde el envío de la solicitud hasta la recepción del primer token¿Cuándo empieza a llegar la salida?
Tokens de salida por segundoTokens recibidos después de la primera llegada, divididos entre el intervalo de entrega correspondiente¿A qué ritmo avanza el flujo de texto?
Tiempo hasta el primer token de respuestaDesde el envío de la solicitud hasta el primer token de respuesta, después del razonamiento previo que pueda haber¿Cuándo empieza la respuesta?
Tiempo total de respuesta de la APIDesde el envío de la solicitud hasta que se recibe la respuesta completa¿Cuándo termina la respuesta?

Estos intervalos siguen las definiciones de métricas de Artificial Analysis. El primer token de razonamiento puede llegar antes que el primer token de respuesta; por eso, cada medición necesita su propio nombre.

Cronología de estilo arquitectónico que separa la espera hasta el primer token, la entrega de la salida y el tiempo total del flujo
La velocidad de salida abarca una parte del recorrido. La espera hasta el primer token y la finalización del flujo tienen sus propios límites de medición.

La latencia de extremo a extremo de tu aplicación empieza cuando el usuario actúa y termina cuando obtiene un resultado útil. En un asistente de voz, ese resultado puede ser una respuesta audible; en un agente, una acción completada. La recuperación de información, la ejecución de herramientas, la síntesis de audio y las actualizaciones de la interfaz pueden quedar fuera de la solicitud al modelo. Añade mediciones que cubran también ese recorrido completo.

Las etapas internas son prefill, en la que se procesa el prompt, y decode, en la que se genera la continuación. La guía de inferencia de LLM explica cómo avanza ese trabajo por el sistema que sirve el modelo.

Por qué una sola cifra de velocidad de inferencia puede engañar

Un resultado de velocidad describe una carga de trabajo en un endpoint, no una propiedad del modelo que se mantenga en cualquier circunstancia. Si cambia el trabajo o las condiciones de ejecución, también cambia la comparación.

Longitud del prompt y contexto en caché

Un chat de soporte con una pregunta breve no plantea el mismo trabajo que ese mismo chat con un historial extenso y documentos de políticas recuperados. Una entrada más larga modifica el trabajo previo a la respuesta. Groq señala el tamaño de la entrada como uno de los factores que influyen en el TTFT en su guía de latencia.

Registra la longitud del prompt y el estado de la caché en las pruebas. La guía de la caché KV explica qué estado de atención se guarda durante la generación y cómo se relaciona la reutilización de prompts con la caché. Una prueba con un prompt repetido que ya está en caché no debe presentarse, sin indicarlo, como si representara una conversación nueva con un cliente.

El razonamiento previo a la respuesta

Un modelo de razonamiento puede generar tokens intermedios antes de entregar la respuesta. Que genere rápido no indica cuánto va a razonar. Comprueba si la velocidad publicada incluye ese flujo y si el cronómetro del primer token se detiene al recibir razonamiento o texto de respuesta.

En un asistente de reservas, lo que cuenta es una respuesta útil o una llamada a una herramienta. Mostrar un indicador de que el modelo está pensando puede confirmar la recepción de la solicitud, pero no completa la reserva.

Procesamiento por lotes y concurrencia

El procesamiento por lotes agrupa trabajo para aprovechar mejor el hardware. El rendimiento agregado contabiliza la salida del conjunto de solicitudes; la velocidad por usuario describe el flujo que recibe una solicitud individual. Cerebras señala que agrupar solicitudes puede aumentar el rendimiento y, al mismo tiempo, añadir espera. Fuente: explicación del rendimiento de Cerebras.

Al operar el sistema, hay una pregunta clave: ¿cada conversación sigue avanzando cuando llegan otras? Mide con un tráfico simultáneo representativo e incluye las solicitudes fallidas y los reintentos. Un buen resultado en un endpoint sin más actividad deja esa pregunta sin responder.

Región y entrega de la respuesta

La ubicación de tu aplicación y del endpoint de inferencia influye en el retraso de red. Groq distingue los tiempos del servidor de la latencia que percibe el cliente en sus indicaciones para analizar la red.

Mide desde la región donde se ejecuta tu backend. Si la aplicación reenvía el flujo al navegador, añade una medición en el navegador: la acumulación de datos en búferes entre ambos puntos puede hacer que una respuesta fluida en origen llegue en ráfagas. Corregir ese trayecto puede tener más efecto que cambiar de modelo.

Tokens por segundo según la GPU

Una GPU, el acelerador que ejecuta la inferencia, no tiene una cifra única de tokens por segundo que resulte útil al margen del modelo y la carga de trabajo. Para comparar hardware, el resultado debe ir acompañado del modelo, la precisión numérica, el contexto, la configuración de inferencia y la carga concurrente.

La cuantización reduce la precisión numérica para ahorrar memoria; sus efectos sobre la velocidad y la calidad dependen de la implementación. Cerebras documenta esa distinción en su explicación de la compresión de modelos. Consulta la guía de cuantización de LLM al comparar despliegues con modelos comprimidos y comprueba la calidad de las respuestas junto con los tiempos.

Cómo presentan los proveedores sus cifras de velocidad

Trata las velocidades publicadas como afirmaciones atribuidas a una fuente, con un modelo y una fecha. Las siguientes páginas de los proveedores se verificaron el 24 de octubre de 2026. Son cifras de los propios proveedores, no mediciones realizadas para este artículo.

Cerebras: una velocidad publicada con condiciones de despliegue

Cerebras, proveedor de inferencia, anuncia “~3000 tokens/s” para OpenAI GPT-OSS 120B en su tabla Developer. La misma página indica que el rendimiento varía según el modelo y la configuración, y que el acceso Developer está pensado para evaluación, no para producción. Fuente: precios de Cerebras.

Página del producto de inferencia de Cerebras
Cerebras

Lo que necesitas saber es si el despliegue que puedes contratar atenderá tu carga de trabajo con la capacidad y los tiempos de respuesta que buscas. La tabla, por sí sola, no lo resuelve.

Tokens por segundo en Groq: revisa la fila del modelo

Groq, proveedor de inferencia, muestra “500” para OpenAI GPT-OSS 120B en la columna “SPEED (T/SEC)” de su tabla de modelos compatibles. Esa es la cifra que Groq publica para esa fila. Fuente: modelos compatibles de Groq.

Documentación de Groq que muestra cómo recibir en streaming una respuesta de chat
Groq

Estas tablas no permiten establecer una proporción de velocidad entre proveedores para tu aplicación. Antes de afirmar que existe tal diferencia, necesitas comparar con los mismos prompts, ajustes de razonamiento, criterios de recuento de tokens, carga e intervalos de medición.

Para decidir entre velocidad y costo, compara el precio de una tarea completada correctamente y la capacidad que necesitas con la guía de precios de Cerebras y la guía de precios de Groq.

Dónde consultar mediciones independientes

Artificial Analysis, un servicio independiente de pruebas comparativas, ofrece un buen punto de partida para comparar modelos y proveedores de inferencia. Abre su clasificación de proveedores y revisa qué endpoint y qué carga de trabajo hay detrás de cada resultado.

Comparación de proveedores de inferencia de Artificial Analysis
Artificial Analysis

Su metodología de evaluación del rendimiento especifica actualmente:

  • Una carga de trabajo predeterminada de aproximadamente 10,000 tokens de entrada y al menos 1,500 tokens de respuesta.
  • Resultados expresados como la mediana de las últimas 72 horas para las cargas habituales.
  • Un servidor principal de pruebas en la zona us-central1-a de Google Cloud.
  • Recuentos de rendimiento normalizados con o200k_base, en lugar del tokenizador nativo de cada modelo.

Esto proporciona una referencia común, no una garantía sobre tu aplicación. Comprueba el tamaño del prompt, el endpoint, el modo de razonamiento y la fecha antes de comparar resultados. Los prompts más largos pueden alterar tanto la espera hasta el primer token como la velocidad de salida.

En los modelos que ocultan parte de los tokens de razonamiento, Artificial Analysis calcula la velocidad de salida a partir del último 80% de los fragmentos de respuesta. El sencillo script que aparece a continuación no reproduce ese método ni la carga completa de la prueba. Mide el flujo de texto que recibe tu cliente.

Cómo medir tu propio flujo de texto

Mide en el cliente que recibe la respuesta y cuenta tokens de texto, no eventos del flujo. Un evento puede llegar sin texto o contener una porción de texto; si cuentas eventos, obtendrás fragmentos por segundo.

El siguiente ejemplo en Python utiliza la API de streaming de Groq y tiktoken, un tokenizador de texto. Informa de la espera hasta el primer fragmento de texto, el tiempo desde la solicitud hasta el último texto, el tiempo hasta el cierre del flujo y una estimación de los tokens de salida normalizados por segundo.

Instala las dependencias:

Bash
python3 -m pip install groq tiktoken

Configura GROQ_API_KEY en las variables de entorno. Asigna a GROQ_MODEL un modelo de texto sin razonamiento que esté disponible para tu cuenta en la lista de modelos compatibles de Groq y guarda un prompt representativo de tu aplicación en prompt.txt. Guarda este código como measure_stream.py y ejecuta python3 measure_stream.py.

Python
import os
from pathlib import Path
from time import perf_counter

import tiktoken
from groq import Groq

encoder = tiktoken.get_encoding("o200k_base")
prompt = Path("prompt.txt").read_text(encoding="utf-8")
model = os.environ["GROQ_MODEL"]
parts = []
first = last = None

with Groq(max_retries=0) as client:
    start = perf_counter()
    stream = client.chat.completions.create(
        model=model,
        messages=[{"role": "user", "content": prompt}],
        stream=True,
    )
    for event in stream:
        now = perf_counter()
        if not event.choices:
            continue
        text = event.choices[0].delta.content or ""
        if not text:
            continue
        if first is None:
            first = now
        last = now
        parts.append(text)
    end = perf_counter()

if first is None:
    raise SystemExit("No text received; no text-speed measurement.")

# Tokenize after timing; never count events as tokens.
count = lambda text: len(encoder.encode(text, disallowed_special=()))
total_tokens = count("".join(parts))
post_first_tokens = total_tokens - count(parts[0])
span = last - first

print(f"First text chunk / TTFT estimate (s): {first - start:.3f}")
print(f"Request to last text (s): {last - start:.3f}")
print(f"Stream complete (s): {end - start:.3f}")
print(f"Normalized output tokens: {total_tokens}")
if span > 0 and post_first_tokens > 0:
    print(f"Post-first output tok/s (estimate): {post_first_tokens / span:.1f}")
else:
    print("Output tok/s unavailable: insufficient text delivery intervals.")

El SDK de Groq permite desactivar los reintentos automáticos. El ejemplo los desactiva para evitar que una muestra que parece correcta incluya, sin advertirlo, tiempos de espera por reintentos; una solicitud fallida debe registrarse como un fallo.

El cálculo de la tasa excluye el primer fragmento de texto tanto del recuento de tokens como del intervalo de entrega. Sigue la fórmula basada en fragmentos de las definiciones de Artificial Analysis. También omite los metadatos finales al localizar la llegada del último texto.

Grupos de libros de distinto tamaño representan los fragmentos del flujo; el primer grupo queda fuera del recuento de salida posterior a la primera llegada
Los fragmentos son paquetes de entrega. Cuenta su texto con un tokenizador y mide por separado la primera llegada.

Utiliza este ejemplo para texto simple. Un flujo de razonamiento, los argumentos de una llamada a herramientas o el audio requieren un tratamiento específico de sus tipos de evento y una definición de qué se considera la primera salida útil. Para comparar, conserva el prompt y los ajustes, registra la longitud de la salida y repite las pruebas desde la región de tu despliegue con una carga representativa. Conserva los resultados habituales y los lentos; no conviertas la muestra más rápida en una garantía.

Qué puedes saber con una calculadora o un simulador

Una herramienta de planificación puede mostrar qué implica un supuesto sobre los tiempos, pero no descubrir el retraso de tu endpoint.

HerramientaPregunta útilLimitación
Calculadora de tokens por segundo¿Cómo afecta la tasa de salida supuesta al tiempo de finalización?El resultado depende de la tasa, la longitud de salida y la espera hasta el primer token que introduzcas.
Visualizador de tokens por segundo¿Cómo se percibe en pantalla el ritmo supuesto del flujo?El ritmo de visualización no mide el comportamiento de la inferencia ni de la red.

Simulador de tokens por segundo

Usa un simulador para debatir si una interfaz de chat debe mostrar el texto a medida que llega o esperar a que se complete un objeto. Después, valida ese diseño con un flujo real. Una tasa constante simulada no permite saber si la respuesta real se detiene, llega en ráfagas o espera a una herramienta.

Para una respuesta de texto completada, la cuenta es sencilla: el tiempo desde la solicitud hasta el último texto equivale a la espera inicial más el intervalo entre el primer texto y el último. El script mide ambos intervalos en lugar de deducirlos de una velocidad anunciada.

¿Cuántos tokens por segundo son suficientes?

El objetivo útil depende de los momentos de espera que haya en la tarea. Para fijarlo, responde a estas preguntas sobre la experiencia que estás construyendo.

Si desarrollas una aplicación de voz: ¿cuánto espera quien llama desde que termina una frase hasta que escucha una respuesta útil? ¿Puede empezar la voz antes de que se haya escrito toda la respuesta? ¿Se queda sin datos el búfer de audio? ¿Puede interrumpir la persona que llama? Si el silencio aparece antes de que empiece el texto, una mayor velocidad de decodificación puede dejar intacto el problema principal.

Si desarrollas un chat: ¿el usuario espera la primera frase útil, la explicación completa o un resultado estructurado válido? ¿Puede la interfaz mostrar una salida parcial? Una respuesta de soporte y un informe exportable tienen distintos puntos de finalización. Mide el evento que necesita tu interfaz.

Si operas un agente: ¿qué parte de la tarea corresponde a la generación del modelo y qué parte a la ejecución de herramientas? ¿Una respuesta más rápida mantiene los argumentos correctos de las herramientas y permite completar bien la tarea? ¿El siguiente paso espera a recibir toda la salida? Mejorar el intervalo equivocado puede dejar casi igual el tiempo total del flujo de trabajo.

Si vas a contratar un proveedor: ¿el despliegue propuesto puede mantener la experiencia que necesitas con tu tráfico, desde tu región y con tus prompts? ¿La cifra anunciada es habitual en ese despliegue? ¿Qué ocurre cuando fallan las solicitudes o la capacidad está ocupada?

Actúa cuando las trazas indiquen que los usuarios esperan por la generación o por la primera respuesta útil. Pospón el cambio de proveedor si todavía no has identificado el retraso dominante. Un trabajo en segundo plano que ya cumple su plazo de finalización apenas se beneficia de una cifra de velocidad más alta, salvo que el rendimiento agregado o el costo por tarea completada correctamente cambien la decisión.

¿Qué se exagera al hablar de la velocidad de los LLM?

La mayor exageración consiste en asumir que la tasa de salida más alta identifica el mejor endpoint para una aplicación. La velocidad no demuestra la calidad de la respuesta, la validez de la salida ni el uso correcto de herramientas.

Todo endpoint rápido acaba encontrando el límite de la aplicación que lo rodea. Generar texto más deprisa no arregla una consulta lenta a la base de datos, un razonamiento innecesariamente largo o una respuesta que no supera la validación. Del mismo modo, un excelente tiempo hasta el primer token puede ocultar un flujo que se atasca antes de entregar algo útil al usuario.

Incluye la velocidad en la evaluación, pero fija la meta en un resultado correcto y utilizable.

Preguntas frecuentes

¿Cuántos tokens por segundo genera ChatGPT?

El nombre de un producto no basta para identificar una tasa reproducible. Busca un modelo concreto, un modo, una fecha y un método de medición. Una prueba de la API no mide todo el recorrido de entrega de la aplicación de chat.

¿Qué significa 1 token por segundo?

Significa que se entrega, de media, un token por segundo durante el intervalo medido. Un token es una unidad de texto, no necesariamente una palabra, y una media no garantiza que los tokens lleguen a intervalos regulares.

¿Qué tan rápido es generar 100 tokens por segundo?

La cifra describe la tasa de salida durante la generación. No especifica la espera inicial ni cuánto texto hay que generar, así que no permite determinar cuándo llegará una respuesta completa.

¿Es suficiente una velocidad de 20 tokens por segundo?

Comprueba si el usuario recibe un resultado útil con suficiente rapidez y si el componente que lo procesa después tiene que esperar más texto. La tasa por sí sola no determina si es adecuada para un chat, una aplicación de voz o un agente.

¿10,000 tokens son muchos?

Artificial Analysis utiliza aproximadamente esa cantidad de tokens de entrada en su carga de trabajo predeterminada para evaluar el rendimiento. Que sea una cantidad considerable para tu aplicación depende de la conversación, el material recuperado y el contexto admitido. Fuente: metodología de la carga de trabajo.

¿Una velocidad de 5 tokens por segundo es lenta?

En tu aplicación, comprueba si una persona u otro componente espera a que termine de generarse el texto. Una respuesta interactiva y una tarea de generación en segundo plano pueden valorar de forma distinta el mismo flujo.

¿Cuántos tokens por segundo puede leer una persona?

No existe una conversión universal de tokens a velocidad de lectura: los límites de los tokens varían según el tokenizador y la lectura depende del idioma y del material. Evalúa la comprensión y la rapidez percibida con textos y usuarios representativos.

¿Un volumen de 100m tokens es mucho?

Eso es un volumen de tokens, no una velocidad. Para evaluar la capacidad, necesitas un periodo de tiempo, el reparto entre entrada y salida y el patrón de tráfico. La cifra no revela cuánto espera cada usuario.

¿Cómo calcular los tokens por segundo?

Cuenta los tokens de salida posteriores al primer fragmento de texto recibido y divide el resultado entre el tiempo transcurrido desde el primer fragmento hasta el último. Indica el tokenizador y excluye los eventos vacíos; cuando no dispongas de los tiempos exactos de llegada de cada token, identifica el resultado como una estimación observada desde el cliente.

El siguiente paso para tu aplicación

En la próxima iteración, toma un turno de voz, un prompt de chat o una tarea de agente representativos y define qué hace que su resultado sea utilizable. Añade una medición de ese evento junto a la primera salida y la finalización del flujo. Compara los endpoints candidatos con la misma tarea, revisa los fallos y optimiza el intervalo que mantiene al usuario esperando.

Para recibir guías prácticas sobre cómo crear aplicaciones de IA útiles, suscríbete al boletín.

Publicado
Categoría
Build
Artículos relacionados
LLMOps en producción: qué controlar y por dónde empezar

LLMOps en producción: qué controlar y por dónde empezar

Qué es LLMOps, cómo se diferencia de MLOps y qué controles de evaluación, trazas, permisos y recuperación necesita una aplicación con LLM en producción.23 oct 2026Build
Salidas estructuradas: cómo usarlas en OpenAI, Claude y Gemini

Salidas estructuradas: cómo usarlas en OpenAI, Claude y Gemini

Aprende a usar salidas estructuradas en OpenAI, Claude y Gemini: límites de los esquemas, extracción de facturas, validación, reintentos y streaming.23 oct 2026Build
Alternativas a Railway en 2026: dónde alojar tu aplicación

Alternativas a Railway en 2026: dónde alojar tu aplicación

Compara alternativas a Railway para servicios web, Postgres, workers y cron: precios, gestión de secretos y pasos para ensayar la migración de tu aplicación.22 oct 2026Build
Gumloop: análisis, precios y automatización con IA

Gumloop: análisis, precios y automatización con IA

Analizamos Gumloop para investigar clientes, procesar documentos y preparar correos: configuración, precios, créditos, aprobaciones y alternativas.22 oct 2026Build
Datos sintéticos: cómo generarlos para LLM y pruebas de software

Datos sintéticos: cómo generarlos para LLM y pruebas de software

Aprende a generar datos sintéticos para evaluar y ajustar LLM y probar software, con ejemplos, filtros, revisión humana y condiciones de uso de proveedores.22 oct 2026Build
RLHF: aprendizaje por refuerzo con preferencias humanas

RLHF: aprendizaje por refuerzo con preferencias humanas

Cómo funciona RLHF, en qué se diferencia de DPO y qué opciones de ajuste fino puede usar una empresa pequeña para mejorar el comportamiento de sus modelos.22 oct 2026Build
Enrutamiento de modelos: cómo elegir y evaluar cada ruta

Enrutamiento de modelos: cómo elegir y evaluar cada ruta

Aprende a enrutar solicitudes entre modelos de IA, comparar opciones y evaluar calidad y costos con un ejemplo de soporte y un conjunto de pruebas reservado.21 oct 2026Build
Caché semántica: cuándo reutilizar una respuesta de IA

Caché semántica: cuándo reutilizar una respuesta de IA

Aprende cómo funciona la caché semántica y cuándo reutilizar respuestas de IA. Ajusta el umbral, la caducidad y los permisos para evitar respuestas incorrectas.21 oct 2026Build
Newsletter

Una carta, cada domingo.Sistemas que funcionan, no opiniones calientes.

Semanal. Sin spam. Cancele cuando quiera.