🎁 Nuevo Regístrate gratis, 10 llamadas de regalo. Hasta 1 $, sin tarjeta.
DeepSeek V4 Flash: pensar corrompe JSON estricto

DeepSeek V4 Flash: pensar corrompe JSON estricto

Contenido
  1. ¿Cómo se comparan las tres versiones de V4 sobre el papel y según el contador?
  2. ¿El modo de razonamiento corrompe la salida estructurada en V4 Flash?
  3. ¿Qué controles de razonamiento acepta la API?
  4. ¿Cuánto razonamiento necesitan realmente las matemáticas de dos pasos?
  5. ¿Qué ofrece la caché implícita?
  6. ¿Son reales los límites de 1M de contexto y 384K de salida?
  7. Versiones preliminar, 0731 y Pro: ¿cuál responde a sus llamadas?
  8. Preguntas frecuentes

DeepSeek V4 Flash cuesta $0.14 por millón de tokens de entrada y $0.28 por millón de salida, con los aciertos de caché a $0.0028. La versión 0731 reentrenada que ahora se distribuye con ese nombre tiene un defecto que hay que evitar desde el enrutamiento: con el razonamiento activado, que es la opción predeterminada, y un json_schema estricto, los campos enteros llegaron corruptos en 8 de 13 ejecuciones con razonamiento predeterminado a través de dos rutas de petición independientes. Al desactivar el razonamiento, todas las ejecuciones fueron correctas y la extracción consumió una séptima parte de los tokens. Medimos deepseek-v4-flash-0731 el primer día: la corrupción, la caída más brusca al desactivar el razonamiento introducida por el reentrenamiento, el presupuesto mínimo que la corrige, las páginas de caché de 1,024 tokens y las diferencias que aún separan la versión preliminar de V4 Pro.

TL;DR

  • Con razonamiento predeterminado y json_schema estricto, deepseek-v4-flash-0731 corrompió campos enteros en 8 de 13 ejecuciones a través de dos rutas de petición; V4 Pro corrompió 2 de 4 y solo la versión preliminar no presentó errores.
  • El reentrenamiento 0731 agravó la caída al desactivar el razonamiento: en matemáticas de dos pasos pasó de 6/6 a 0/6.
  • La caché sirve páginas de 1,024 tokens a partir de un mínimo aproximado de 1.1K tokens, registra aciertos 0.3 segundos después de llenarse y conserva las entradas durante más de 45 minutos.
  • enable_thinking: false corrigió todas las ejecuciones estructuradas con una séptima parte de los tokens; para matemáticas de dos pasos, el presupuesto de razonamiento seguro es 256.

¿Cómo se comparan las tres versiones de V4 sobre el papel y según el contador?

Mismo tokenizer, misma caché y el mismo mecanismo de razonamiento; distintos precios y modos de fallo. Todas las mediciones siguientes proceden de pruebas idénticas ejecutadas contra las tres versiones (un guion indica que no probamos esa celda). Los análisis publicados el primer día se centran en benchmarks, así que esta es la parte operativa de la comparación:

Flash 0731Flash preliminarV4 Pro
Precio de lista, entrada / salida por 1M$0.14 / $0.28$0.14 / $0.28$0.435 / $0.87
Entrada con acierto de caché por 1M$0.0028$0.0028$0.003625
Razonamiento predeterminadoactivadoactivadoactivado
JSON estricto con razonamiento activado5/5 corruptas (nuestra ruta)4/4 correctas2/4 corruptas
Matemáticas de dos pasos sin razonamiento0/62/64/4
thinking_budgetexacto por tokenexacto por tokenrespetado (4/4 con 16)
Páginas de caché1,024 tokens, acierto a los 0.3sigualigual
Tokenizer y sobrecarga del promptidénticos, 5 tokensigualigual
Recuperación de aguja probada hasta838K tokens--

¿El modo de razonamiento corrompe la salida estructurada en V4 Flash?

En la versión 0731, sí. Además, el fallo es lo bastante silencioso como para llegar a producción. Una extracción de factura con cuatro campos bajo json_schema estricto —proveedor, fecha, total y número de líneas— y el razonamiento predeterminado devolvió JSON válido según el esquema, pero con cifras incorrectas. line_items devolvió -1, 1, -1 y -19 para un documento que enumera claramente tres elementos: 0 de 5 ejecuciones con razonamiento predeterminado fueron correctas a través de nuestro gateway. Limitar el presupuesto no evita el problema: una ejecución con un presupuesto de 64 tokens falló del mismo modo e, incluso con un presupuesto de 256 tokens, 1 de 3 ejecuciones devolvió 670 como número de líneas. La corrupción depende de que haya razonamiento, no de su tamaño. En una segunda ruta de petición independiente, la misma prueba produjo datos corruptos en 3 de 8 ejecuciones repartidas en dos lotes. En un caso devolvió un total de 519.95 frente a los $520.00 del documento y, en otro, 22 líneas. Esa ruta mantuvo activado el razonamiento incluso al pedir que se desactivara, por lo que la solución fiable descrita a continuación solo está verificada en la ruta principal. El JSON siempre se puede analizar y siempre cumple el esquema; solo son incorrectos los valores. Es el peor modo de fallo posible para un pipeline que confía en la validación.

La solución consiste en una línea: enable_thinking: false generó JSON correcto y válido en todas las ejecuciones, con unos 44 tokens de salida frente a los 328 del modo predeterminado. Las diferencias dentro de la familia son reveladoras: la versión preliminar, sometida a la misma prueba con el razonamiento activado, obtuvo 4/4 ejecuciones correctas, mientras que V4 Pro corrompió 2 de 4. El fallo afecta a la línea V4 con razonamiento y golpea con mayor intensidad a la versión flash reentrenada. Tampoco es el error de razonamiento con esquema ya documentado: vLLM corrigió el pasado abril un problema de integración por el que el JSON de DeepSeek terminaba en el campo de razonamiento y el contenido quedaba vacío. Aquí la integración funciona, pero los valores son incorrectos, un fallo mucho peor. Hasta que DeepSeek lo resuelva, el razonamiento y la salida estructurada estricta deben tratarse como opciones incompatibles en estos modelos. No supone ningún coste: la extracción en un solo paso es justo el tipo de carga donde desactivar el razonamiento resulta seguro y cuesta 7 veces menos.

¿Qué controles de razonamiento acepta la API?

Hay dos formas de desactivarlo, un presupuesto exacto y un selector de esfuerzo sin opción para apagarlo. La interfaz que medimos acepta los valores low, medium, high, xhigh y max para reasoning_effort. A diferencia de Qwen 3.8 Max, rechaza none y minimal, así que ese selector no basta para silenciar el modelo. Para desactivar el razonamiento hay que usar enable_thinking: false o thinking: {"type": "disabled"}; ambas opciones se comportan igual y generan respuestas de 9 tokens para una pregunta trivial. thinking_budget se respeta token por token, exactamente como medimos en Qwen 3.8: si se solicitan 16, el contador registra 16. La cadena de pensamiento completa se devuelve en reasoning_content y la sobrecarga fija del prompt es de solo 5 tokens por llamada.

El selector de esfuerzo no produjo ningún efecto medible. En una tarea compleja de conteo de números primos, low y high consumieron 31,374 y 31,370 tokens de razonamiento frente a los 26,897 del valor predeterminado, con resultados correctos en los tres casos. Es variación normal; no hay indicios de ningún límite. En Qwen 3.8, los niveles funcionan como límites de presupuesto ocultos que se activan en tareas intensivas. En V4 Flash no cambiaron nada a ninguna de las profundidades que probamos. Los dos controles relevantes en este modelo son el interruptor y thinking_budget; el selector es meramente decorativo. Resulta irónico que la ficha del modelo publicada por DeepSeek fije sus benchmarks de agentes en «max reasoning effort», una configuración indistinguible del valor predeterminado en la interfaz que medimos.

¿Cuánto razonamiento necesitan realmente las matemáticas de dos pasos?

Más que antes del reentrenamiento, lo que invierte nuestra recomendación de usar el modo barato en otros modelos. En nuestro lote reproducible de aritmética de dos pasos —1850 cajas multiplicadas por 24 piezas, se envía el 75% y llegan 3,120—, las tres versiones de V4 se comportan como modelos distintos:

Configuración0731Flash preliminarV4 Pro
predeterminada (razonamiento activado)6/66/64/4
razonamiento desactivado0/62/64/4
thinking_budget: 162/65/64/4
thinking_budget: 645/6--
thinking_budget: 2566/6--

Hay dos conclusiones. Primero, el reentrenamiento para agentes trasladó la aritmética al canal de razonamiento: la versión preliminar apenas funciona sin razonamiento, 0731 falla por completo y a Pro no le afecta. Segundo, el presupuesto mínimo depende del modelo: 16 tokens de razonamiento bastan para recuperar por completo a Qwen 3.8 Max en este mismo lote, pero 0731 necesita 256. Con ese valor acierta siempre y resulta más barato que la configuración predeterminada, con totales de salida de 53-188 frente a 100-200. Si traslada una configuración de presupuesto de razonamiento entre modelos, repita la prueba de precisión. El mecanismo es universal, pero el umbral no.

¿Qué ofrece la caché implícita?

Páginas de 1,024 tokens, un umbral bajo, baja latencia y retención prolongada. Los pares de prefijos con salt introducido produjeron aciertos de exactamente 1,024, 2,048, 4,096 y 7,168 tokens a medida que crecía el prompt: cuantización alineada en páginas de 1,024. El mínimo está apenas por encima de una página: un prompt de 704 tokens nunca produjo un acierto, mientras que uno de 1,166 tokens generó un acierto de 1,024. El primer acierto llegó 0.3 segundos después de llenar la caché, así que no hay retraso de construcción que deba compensarse, y la entrada seguía disponible a los +45 minutos. Es la caché implícita más duradera que hemos probado en este nivel de precio. La entrada de Qwen 3.8 Max expiró entre los 15 y 45 minutos, y su umbral está cerca de 4.3K tokens. DeepSeek fija la entrada con acierto de caché en $0.0028 por millón, un 2% del precio sin acierto, sin recargo por escritura. Se aplica la disciplina habitual de composición por capas: primero el prefijo estable y después el contenido variable.

¿Son reales los límites de 1M de contexto y 384K de salida?

La ventana respondió en todos los puntos que probamos: los códigos de anulación insertados se recuperaron literalmente con prompts de 137,638, 465,238 y 838,198 tokens, en entre 7 y 20 segundos. Es la recuperación de contexto largo más rápida que hemos medido en este nivel de precio. El límite de salida es menos estricto que lo documentado: DeepSeek publica un máximo de 384K tokens de salida, pero se aceptaron peticiones con max_tokens de 393,217 e incluso 524,288 tanto con razonamiento como sin él. El límite no se aplica al recibir la petición, por lo que un presupuesto excesivo no fallará de forma explícita. Defina su propio límite si depende de él.

Versiones preliminar, 0731 y Pro: ¿cuál responde a sus llamadas?

La página de precios de DeepSeek muestra ahora un solo SKU: deepseek-v4-flash, con DeepSeek-V4-Flash-0731 como versión del modelo y los mismos precios. En la práctica, algunas rutas siguen sirviendo la versión preliminar bajo su propio nombre. Aunque comparten tokenizer —los conteos en corpus de inglés, chino y código son idénticos, por lo que se pueden trasladar los presupuestos—, es fácil distinguirlas desde fuera. La prueba más clara consiste en desactivar el razonamiento: en nuestros lotes, las matemáticas de dos pasos obtienen aproximadamente 2/6 con la versión preliminar y 0/6 con 0731. La versión preliminar también es la única que superó sin errores la prueba de salida estructurada: 4/4 correctas, frente a 5/5 corruptas en 0731 y 2/4 en Pro. Si su tráfico depende de alguno de estos comportamientos, pruebe el endpoint real al que llama en lugar de fiarse del nombre. V4 Pro ($0.435/$0.87) no sufrió la caída en matemáticas, pero sí el problema de salida estructurada.

Un dato para la planificación: el tokenizer común de los tres modelos genera aproximadamente un 6-9% más de tokens que Qwen 3.8 sobre corpus idénticos. Para comparar presupuestos entre proveedores hacen falta las cifras de densidad por idioma, no basta con la tabla de precios.

Preguntas frecuentes

¿Es segura la salida estructurada en DeepSeek V4 Flash?

Sí, con el razonamiento desactivado: se aplicó el json_schema estricto y todas las extracciones del lote fueron correctas. Con el razonamiento predeterminado activado en la versión 0731, los campos enteros llegaron corruptos en 8 de 13 ejecuciones a través de dos rutas de petición, aunque seguían cumpliendo el esquema. V4 Pro corrompió 2 de 4 ejecuciones con la misma prueba; solo la versión preliminar no presentó errores. Fije enable_thinking: false en las rutas de salida estructurada hasta que se corrija el defecto.

¿Se puede desactivar el razonamiento en DeepSeek V4 Flash?

Sí, con dos sintaxis: enable_thinking: false o thinking: {"type": "disabled"}. Sin embargo, el reentrenamiento 0731 hizo que el estado desactivado fuera poco fiable en tareas de varios pasos: obtuvo 0/6 en matemáticas de dos pasos. Use un thinking_budget mínimo de 256 para cualquier tarea que vaya más allá de una consulta de un solo paso. En nuestras mediciones, fue completamente preciso y más barato que el valor predeterminado.

¿Cuál es el tamaño mínimo de prompt para la caché de V4 Flash?

Algo más de 1,024 tokens: un prompt de 704 tokens nunca se almacenó en caché, mientras que uno de 1,166 produjo un acierto de exactamente 1,024. Los aciertos se cuantizan en páginas de 1,024 tokens, aparecen 0.3 segundos después de llenar la caché y duran más de 45 minutos. El precio publicado para la entrada con acierto de caché es de $0.0028 por millón, un 2% del precio sin acierto.

¿Cambiaron los precios con el lanzamiento de 0731?

No. DeepSeek mantuvo $0.14 por millón de tokens de entrada sin acierto de caché, $0.0028 con acierto y $0.28 por la salida. Además, integró 0731 en el nombre existente deepseek-v4-flash como versión actual del modelo. Cambió el comportamiento, no el precio: una mayor dependencia del razonamiento y el defecto de salida estructurada descrito anteriormente.

Medido el 2026-08-04 a través del gateway de Synthorai contra deepseek-v4-flash-0731, con grupos de contraste en la versión preliminar deepseek-v4-flash y en deepseek-v4-pro: lotes de extracción con esquema estricto y registro del payload de cada ejecución, verificados en una segunda ruta de petición independiente; pruebas de valores aceptados por el selector y de valores no válidos; lote de precisión de dos pasos (n=4-6 por grupo, con salt) y aumento progresivo del presupuesto de razonamiento para recuperar el rendimiento; pares de caché con salt a intervalos de 2.5s y pruebas de umbral, página, retraso y duración; pruebas de límites de max_tokens en ambos modos; y conteos idénticos del tokenizer sobre tres corpus para los tres modelos y Qwen 3.8 Max. Los importes en dólares son los precios de lista publicados por DeepSeek en el momento de la publicación; compruébelos con el contador de su proveedor. El comportamiento puede cambiar a medida que DeepSeek actualice la versión 0731.

← Volver al blog