¿Cuántos tokens estás quemando sin darte cuenta? Descubrí cómo cada palabra que le enviás a tu LLM impacta directamente en el costo y la calidad de sus respuestas.
En este viaje de aprendizaje, vamos a desmitificar un concepto fundamental para interactuar con modelos de lenguaje: los tokens. Más allá de la magia, hay una mecánica que, una vez comprendida, te permite afinar tus prompts para lograr resultados superiores y, de paso, cuidar tu presupuesto. No se trata solo de hablarle a la IA, sino de hacerlo de forma inteligente y eficiente, transformando cada interacción en un diálogo preciso y potente. Preparate para ver cómo la granularidad de la comunicación con tu LLM puede ser tu mayor aliada.
Tokens en la Práctica: Hablá con tu LLM de Forma Eficiente
En la edición anterior, hablamos de qué es un LLM. Ahora, la conversación se pone más granular: ¿cómo le hablamos a un modelo para que nos entienda mejor y, de paso, no nos cueste un ojo de la cara? La respuesta está en entender y manejar los tokens. Cada interacción con un LLM es una danza de tokens, y dominarla es clave para construir productos con IA.
¿Qué es un token?
Imaginá un token como la unidad mínima de información que un LLM puede procesar. No es una palabra, ni una letra, sino una secuencia de caracteres que el modelo ha "aprendido" a reconocer. Es como el alfabeto interno del LLM. Por ejemplo:
- La palabra "tokenización" en español podría dividirse en
to-ken-i-za-ción(4 tokens). - En inglés, "tokenization" podría ser
token-i-za-tion(3 tokens). - "Buenos Aires" podría ser
BuenosyAires(2 tokens). - Incluso los espacios y la puntuación suelen contar como tokens.
Esta granularidad es crucial: un prompt más largo no solo significa más palabras, sino potencialmente muchos más tokens, y ahí es donde empiezan a jugar el costo y la calidad.
La Ventana de Contexto: Tu Espacio de Conversación
La ventana de contexto es, en esencia, la "memoria" que tiene el LLM para una interacción específica. Es la cantidad máxima de tokens que puede procesar en un solo turno de conversación (prompt + respuesta). Cuando hablamos de 4K, 128K o 1M tokens, nos referimos a esto. Pero, ¿qué significa en la práctica?
Considerá que 1000 tokens equivalen aproximadamente a 750 palabras en inglés. En español, por la morfología de las palabras, puede ser un poco menos.
- 4K tokens: Unas 3.000 palabras, o 5-6 páginas de texto A4. Suficiente para una interacción concisa o un resumen corto. (Ej: GPT-3.5 Turbo)
- 128K tokens: Alrededor de 96.000 palabras, o 150-200 páginas A4. Permite procesar documentos extensos o mantener conversaciones largas. (Ej: GPT-4 Turbo)
- 1M tokens: Cerca de 750.000 palabras, o 1200-1500 páginas A4. Ideal para análisis de libros enteros, bases de código grandes o extensos historiales de chat. (Ej: Gemini 1.5 Pro, Claude 2.1)
Es tentador pensar que "más grande es mejor", pero una ventana de contexto enorme no siempre es la solución. Más tokens implican mayor costo y, a veces, el modelo puede "diluir" su atención si el contexto está lleno de ruido irrelevante.
Por qué cada palabra cuenta: Costo y Calidad
Cada token que enviás a un LLM (y cada token que recibís como respuesta) tiene un costo. Si un modelo cobra, digamos, $0.001 por cada 1000 tokens de entrada, un prompt de 10.000 tokens te costará $0.01. Parece poco, pero multiplicá eso por miles o millones de interacciones diarias en un producto, y los números escalan rápido.
Pero el costo es solo la mitad de la historia. La calidad es igual o más importante:
- Reducción de "ruido": Un contexto lleno de información irrelevante distrae al modelo. Es como pedirle a alguien que encuentre una aguja en un pajar. El LLM puede generar respuestas genéricas, incorrectas o simplemente no enfocadas en lo que necesitás.
- Mayor precisión y relevancia: Un prompt conciso y bien estructurado permite al LLM concentrarse en la tarea específica. Esto se traduce en respuestas más precisas, directas y útiles.
- Mejor performance: Incluso los modelos más grandes pueden rendir mejor con prompts optimizados. Para modelos más pequeños o con ventanas limitadas, la optimización es directamente proporcional a la utilidad del output.
Estrategias de Prompting: Un Mismo Problema, Tres Soluciones
Para ilustrar cómo la forma de pedirle algo al LLM impacta en los tokens y la calidad, veamos un mismo caso de uso: clasificar un email de soporte.
Email a clasificar: "Hola, mi cuenta no me deja entrar. Pongo mi usuario y contraseña y me dice que son incorrectos. Necesito ayuda urgente." Categorías disponibles: "Problema de Acceso", "Problema de Facturación", "Consulta General", "Reporte de Bug".
1. Zero-shot Prompting
Es la forma más directa: le das la instrucción y el input, sin ejemplos.
Prompt:
Clasificá el siguiente email en una de estas categorías: 'Problema de Acceso', 'Problema de Facturación', 'Consulta General', 'Reporte de Bug'.
Email: 'Hola, mi cuenta no me deja entrar. Pongo mi usuario y contraseña y me dice que son incorrectos. Necesito ayuda urgente.'
Output esperado: Problema de Acceso
Tokens: Bajo.
Calidad: Funciona bien para tareas simples y directas. Para ambigüedades o tareas que requieren un formato de respuesta muy específico, puede fallar.
2. Few-shot Prompting (con 2 ejemplos)
Le das la instrucción y algunos ejemplos de cómo esperás que resuelva la tarea. Esto ayuda al modelo a entender el formato y el tipo de razonamiento.
Prompt:
Clasificá emails de soporte en una de estas categorías: 'Problema de Acceso', 'Problema de Facturación', 'Consulta General', 'Reporte de Bug'.
Ejemplo 1:
Email: 'Me llegó la factura con un monto incorrecto, ¿pueden revisarlo?'
Categoría: Problema de Facturación
Ejemplo 2:
Email: 'No puedo ver mis pedidos recientes en la app, la pantalla se queda en blanco.'
Categoría: Reporte de Bug
Email a clasificar: 'Hola, mi cuenta no me deja entrar. Pongo mi usuario y contraseña y me dice que son incorrectos. Necesito ayuda urgente.'
Output esperado: Problema de Acceso
Tokens: Medio (significativamente más que Zero-shot por los ejemplos).
Calidad: Mejora la consistencia y la precisión, especialmente para tareas con matices o cuando el formato de la respuesta es importante. El modelo aprende del patrón de los ejemplos.
3. Chain-of-Thought (CoT) Prompting
Le pedís al modelo que "piense en voz alta" o que desglose el problema en pasos lógicos antes de dar la respuesta final. Esto guía su razonamiento.
Prompt:
Clasificá emails de soporte en una de estas categorías: 'Problema de Acceso', 'Problema de Facturación', 'Consulta General', 'Reporte de Bug'.
Pensá paso a paso:
1. Identificá las palabras clave del email.
2. Relacioná esas palabras clave con las categorías disponibles.
3. Elegí la categoría más adecuada.
Email: 'Hola, mi cuenta no me deja entrar. Pongo mi usuario y contraseña y me dice que son incorrectos. Necesito ayuda urgente.'
Output esperado: Pensamiento: El email menciona 'mi cuenta no me deja entrar' y 'usuario y contraseña incorrectos'. Esto se relaciona directamente con la acción de acceder a la cuenta. La categoría 'Problema de Acceso' es la más apropiada. Categoría: Problema de Acceso
Tokens: Alto (el más alto de los tres, por la instrucción de pensamiento y la explicación).
Calidad: Excelente para tareas de razonamiento complejo, reduce errores y permite auditar la lógica del modelo. Es como darle un paso a paso para resolver un problema, lo que a menudo lleva a una solución más robusta.
Comparación: No hay una técnica "mejor" universal. Depende de la complejidad de la tarea y tu tolerancia al costo. CoT es potente para la precisión en tareas complejas, pero es el más costoso. Few-shot es un excelente balance para muchas situaciones, mientras que Zero-shot es ideal para lo más simple y directo.
Ejercicio Accionable: Optimizá tu Próximo Prompt
La teoría está bien, pero la práctica es lo que cuenta. Te propongo un desafío para esta semana:
- Elegí un prompt real: Tomá un prompt que estés usando en un proyecto o que planees usar pronto. Puede ser para clasificar texto, generar contenido, extraer información, lo que sea.
- Aplicá la "Checklist de Optimización":
- Claridad: ¿El objetivo del prompt es inequívoco? ¿Hay alguna ambigüedad?
- Concisión: ¿Hay palabras o frases que puedan eliminarse sin perder significado? ¿Podrías usar sinónimos más cortos?
- Relevancia: ¿Todo el contexto o la información provista es estrictamente necesario para que el modelo complete la tarea?
- Formato: ¿Estás pidiendo el output en un formato específico (JSON, lista, etc.)? Esto reduce la ambigüedad y el texto extra.
- Ejemplos (Few-shot): Si la tarea es compleja o requiere un estilo particular, ¿podrías añadir 1-2 ejemplos para guiar al modelo?
- Paso a paso (CoT): ¿La tarea se beneficia de un "pensá paso a paso" para mejorar el razonamiento?
- Medí el ahorro: Usá una herramienta de conteo de tokens (como el Tokenizer de OpenAI o similar) para comparar tu prompt original con el optimizado. Estimá el ahorro de tokens y calculá cuánto menos te costaría por cada mil o diez mil ejecuciones. Vas a sorprenderte de lo rápido que se acumulan los ahorros y cómo la calidad de la respuesta puede mejorar significativamente.
Qué te llevás
Optimizar el uso de tokens no solo reduce costos operativos, sino que mejora drásticamente la calidad y relevancia de las respuestas de tu LLM, transformando la interacción en un diálogo más preciso y efectivo.
Ponelo en práctica
Elegí un prompt crítico en tu proyecto actual y aplicale la 'Checklist de Optimización' que vimos. Medí el ahorro de tokens y evaluá si la calidad de la respuesta mejora o se mantiene. Vas a sorprenderte del impacto directo en costos y performance.
Tu plan de acción para esta semana
- Entender los tokens es clave: son la unidad mínima de información que tu LLM procesa, impactando directamente en el costo y la calidad de cada interacción. No son palabras, son secuencias de caracteres que el modelo interpreta.
- La ventana de contexto define la 'memoria' del LLM. Más tokens no siempre es mejor; un contexto limpio y relevante reduce el 'ruido' y mejora la precisión de las respuestas.
- Elegí tu estrategia de prompting: Zero-shot para lo simple, Few-shot para consistencia con ejemplos, y Chain-of-Thought para tareas complejas que requieren razonamiento paso a paso. Cada una tiene su trade-off entre costo y calidad.
- Aplicá la checklist de optimización: Claridad, concisión, relevancia y formato son tus aliados. Medí el ahorro de tokens en tus prompts actuales para ver el impacto real en costos y performance.
Ahora que conocés el poder de los tokens, ¿qué prompt crítico de tu codebase vas a optimizar primero? Experimentá y medí el impacto.