Modelos de razonamiento comparados
Un modelo de razonamiento gasta cómputo extra pensando antes de responder — generando una cadena privada de pasos intermedios, y luego la respuesta final. Es la palanca más grande sobre la precisión en problemas difíciles en toda la IA importante de hoy. La trampa: cada proveedor expone la misma idea con un control diferente, y gastar de más desperdicia dinero y latencia sin ninguna ganancia. Esta lección mapea los controles lado a lado para que la habilidad se transfiera entre Claude, GPT, Gemini, DeepSeek y Qwen.
- Explicar qué te compra el cómputo en tiempo de inferencia (pensamiento) y qué no
- Mapear el control de razonamiento de cada proveedor: effort de Claude, reasoning.effort de OpenAI, thinkingBudget/thinkingLevel de Gemini, reasoner de DeepSeek, enable_thinking de Qwen
- Elegir una profundidad de pensamiento según la tarea en lugar de poner todo al máximo por defecto
- Leer correctamente la traza de razonamiento en cada API sin realimentarla como entrada
- Evitar las trampas comunes: pensar de más, los modelos que no se pueden desactivar y tratar el esfuerzo como un arreglo de calidad
La única idea: pensar es un dial, no un interruptor
Todo modelo de razonamiento vive sobre el mismo compromiso:
- Menos pensamiento → más rápido, más barato. Adecuado para extracción, formateo, preguntas y respuestas simples.
- Más pensamiento → mejor en problemas genuinamente difíciles (matemáticas de varios pasos, depuración complicada, demostraciones cuidadosas), a mayor latencia y coste.
La trampa que hace tropezar a la gente: el pensamiento extra no hace nada por una tarea que ya era fácil — solo pagas la latencia y el coste. La habilidad está en gastar profundidad donde cambia la respuesta. Esa verdad es idéntica en cada modelo de abajo; solo cambia el nombre del dial.
Este es el hermano multi-IA de la lección específica de Claude Pensamiento extendido y esfuerzo — léela para conocer los detalles de la API de Mensajes de Claude.
Paso 1 — Clasifica la tarea antes de tocar un control
- Extracción, reformateo, clasificación, búsqueda factual corta → pensamiento mínimo o nulo. El pensamiento no ayudará y añade latencia.
- Programación normal, redacción, análisis de varios párrafos → medio / dinámico. El valor por defecto equilibrado en todos los proveedores.
- Matemáticas de competición, depuración sutil de condiciones de carrera, demostraciones largas, planificación agéntica difícil → alto / presupuesto grande. Aquí es donde el pensamiento justifica su coste.
- Empieza en el valor por defecto medio/dinámico del proveedor y sube el esfuerzo solo donde la calidad lo exija visiblemente.
- Un esfuerzo mayor no es un arreglo para un prompt vago — una especificación más clara suele superar a más pensamiento.
Paso 2 — El control, proveedor por proveedor
El mismo dial, cinco superficies de control diferentes. Esta es la tabla que hay que tener abierta cuando portas una carga de trabajo entre modelos.
| Proveedor / modelo | Control | Valores | ¿Desactivar el pensamiento? |
|---|---|---|---|
| Claude (pensamiento extendido) | nivel effort (los modelos más nuevos adaptan la profundidad; los más antiguos exponen budget_tokens) | Low / Medium / High | Sí, en la mayoría — usa un nivel bajo u omite el pensamiento |
| OpenAI GPT‑5.5 / serie o | reasoning.effort | minimal, low, medium (por defecto), high, xhigh (GPT‑5.5 / Codex‑Max) | minimal emite pocos o ningún token de razonamiento |
| Google Gemini 2.5 | thinkingBudget | recuento de tokens; 0 desactiva; -1 = dinámico (tope ~8.192); 2.5 Pro requiere 128–32768 o -1 | 0 en la mayoría de los modelos 2.5 |
| Google Gemini 3 | thinkingLevel (no lo combines con thinkingBudget) | niveles escalonados | No — Gemini 3.1 Pro no se puede desactivar |
DeepSeek R1 (deepseek-reasoner) | reasoner dedicado — siempre piensa | n/a (pesos abiertos, se ejecuta localmente) | No — es un modelo que solo piensa |
| Qwen3 | enable_thinking (híbrido) + interruptores suaves /think · /no_think | on / off, alternado por turno | Sí — enable_thinking=False o /no_think |
- Algunos modelos ELIMINAN el interruptor de apagado: Gemini 3.1 Pro y DeepSeek R1 siempre piensan. Planifica la latencia/coste para eso — no puedes ponerlos a cero.
- En Gemini 3, establecer tanto thinkingLevel como thinkingBudget en una misma petición es un error. Elige uno.
- El modo dinámico de Gemini (-1) limita el pensamiento a ~8.192 tokens — está bien para la mayoría del trabajo, pero es un techo rígido en los problemas más difíciles.
Las dos familias
Leyendo la tabla de arriba abajo, los modelos se dividen en dos tipos — saber cuál tienes en la mano te dice qué esperar:
- Híbridos / conmutables (Claude, OpenAI, Gemini 2.5, Qwen3): un solo modelo, subes o bajas el pensamiento — o lo apagas — por petición. Lo mejor para tráfico mixto donde algunas llamadas son triviales y otras difíciles.
- Razonadores dedicados (DeepSeek R1; Gemini 3.1 Pro en la práctica): el modelo siempre razona. No enrutes formateo y extracción aquí — pagarás el impuesto del pensamiento en cada llamada. Mantén un modelo barato sin pensamiento en la rotación para el tráfico fácil.
Paso 3 — Lee correctamente la traza de razonamiento
Cada proveedor devuelve el pensamiento por separado de la respuesta — y la regla universal es no pegar el razonamiento de vuelta como entrada en el siguiente turno. Realimenta solo la respuesta final (más, en Claude, los bloques de pensamiento firmados que la API te entrega para los bucles de herramientas).
- La respuesta llega como un bloque de pensamiento seguido del bloque de texto. Itera message.content y ramifica según block.type.
- El razonamiento vive en los reasoning items / resumen; se te cobra por tokens de razonamiento que no ves por completo. Persiste el estado de la respuesta en lugar de reenviar el razonamiento en bruto.
- Establece includeThoughts para obtener resúmenes de pensamiento; los tokens de pensamiento se cobran y se reportan en los metadatos de uso.
- La traza vuelve como un campo reasoning_content (compilaciones antiguas) o reasoning, separado de content. Con pesos en bruto es el texto entre las etiquetas <think> y </think>.
La misma tarea, tres diales — pseudoconfiguración que puedes adaptar
# Claude — balanced
thinking = {"type": "enabled", "budget_tokens": 8000} # keep < max_tokens
# OpenAI — balanced
reasoning = {"effort": "medium"}
# Gemini 2.5 — let the model decide
thinking_config = {"thinking_budget": -1} # dynamic; 0 to disable
# Qwen3 (local) — turn thinking OFF for a trivial call
chat_template_kwargs = {"enable_thinking": False}Paso 4 — Cuándo NO gastar pensamiento
El error caro es poner todo al máximo por defecto. Omite o minimiza el pensamiento cuando:
- La tarea es mecánica (extraer, reformatear, clasificar, traducir una cadena conocida).
- Estás bajo un presupuesto de latencia ajustado (interfaces de chat, autocompletado) — usa
minimal/0//no_think. - El prompt está poco especificado — más pensamiento sobre una tarea vaga produce divagación confiada, no una mejor respuesta. Arregla la especificación primero.
- Estás haciendo trabajo por lotes de gran volumen donde unos pocos puntos de precisión no valen la pena multiplicar la factura de tokens a través de millones de llamadas.
- Regla general: el pensamiento vale la pena cuando el problema tiene una respuesta correcta verificable que requiere varios pasos dependientes. Rinde poco en la generación abierta donde no hay un único camino correcto.
Quiz
Check yourself
0/4Flashcards
Fuentes y lecturas adicionales
- OpenAI — Guía de modelos de razonamiento y Buenas prácticas de razonamiento
- Google AI for Developers — Pensamiento de Gemini
- Anthropic — Pensamiento extendido
- Qwen3 — Think Deeper, Act Faster
- vLLM — Salidas de razonamiento (DeepSeek R1, Qwen3)
- Relacionado en AILmanac: Pensamiento extendido y esfuerzo · Elegir un modelo · Portar prompts entre modelos