Die Blogartikel erscheinen auf Spanisch und Katalanisch.

Aprendiendo IA

¿Qué modelo te ha contestado? Ahora, con prueba

Anthropic, la empresa estadounidense que desarrolla Claude, ha publicado FlashProve, un prototipo de código abierto que genera, a posteriori y sobre parte de los tokens, pruebas criptográficas de que una respuesta la generó el modelo prometido, sin que el proveedor tenga que entregar el modelo. Es lo que se llama inferencia verificable. Según Anthropic, hoy cuesta unas 72 veces más tiempo de GPU que servir la respuesta sin prueba, y solo funciona con un tipo concreto de modelo y con textos cortos. Explicamos qué garantiza, qué no y cómo comprobar el ejemplo que trae.

Un joven con jersey verde examina con una lupa la transcripción impresa de un chat, que lleva grapado un recibo y un sello de lacre al lado, junto a un portátil que muestra una onda de sonido.
📷 Imagen generada con IA

En resumen

  • Anthropic publicó el 2 de noviembre de 2026 FlashProve, un prototipo de investigación de código abierto, con licencia Apache 2.0, para demostrar qué modelo de IA generó cada respuesta.
  • Según Anthropic, hoy un usuario no puede comprobar que una respuesta sale del modelo que le prometen y no de otro más barato colado por un intermediario.
  • En su prueba con Llama 4 Maverick, de Meta, una sola GPU H100 de Nvidia procesa lotes de 24 ventanas de 1.024 tokens a unos 110 tokens por segundo en lectura paralela, con una prueba de un token por petición, y cada prueba se comprueba en 17 segundos en el procesador del cliente, sin GPU, según Anthropic.
  • La prueba no dice si la respuesta es correcta ni si el modelo es seguro, y hoy solo cubre textos de hasta 1.024 tokens y un tipo concreto de modelo.
  • El 3 de noviembre clonamos el repositorio y comprobamos los ficheros de su ejemplo sin GPU y sin coste; la verificación completa exige compilar el verificador, que según el README debe responder YES.

Hoy nadie puede saber qué modelo le ha contestado

En la cocina de un restaurante, un camarero levanta la tapa de un plato de langosta y la cambia a escondidas por un plato de espaguetis, mientras al fondo, por la puerta abierta, el cliente espera sonriente en su mesa.
📷 Imagen generada con IA

Cuando se pregunta algo a un modelo de IA, la respuesta llega sin firma. Según Anthropic, un usuario no puede comprobar hoy que viene del modelo que el desarrollador dice que responde, y no de otro colado en secreto por un intermediario que reparte las peticiones entre modelos para ahorrar costes, ni de un atacante que haya manipulado la secuencia de tokens. Y juzgar por el texto no basta: según la empresa, es «poco fiable» aunque la respuesta sea de calidad.

Para el uso diario, en el que importa más la respuesta que el modelo que la escribe, la empresa reconoce que es una preocupación menor. Pero Anthropic cita casos en los que sí importa. Los evaluadores independientes que prueban modelos antes y después de su lanzamiento necesitan saber que examinan el mismo que luego se sirve. Los clientes que contratan a través de un intermediario quieren saber que los tokens salen del modelo que pagaron. Y un atacante que altere las respuestas no se detecta mirando solo el texto.

Anthropic piensa también en los reguladores: comprobar que un proveedor sirve solo modelos aprobados, o que su hardware se dedica a servir respuestas y no a entrenar otro modelo a escondidas. En este último caso, la propia empresa advierte de que demostrar que el hardware sirve respuestas no prueba que no esté, por ejemplo, entrenando otro modelo a la vez.

Comprobarlo sin el modelo parecía fuera de alcance

Comprobar una respuesta choca con dos obstáculos, según Anthropic. Los pesos de la mayoría de los modelos punteros son privados. Y aunque el usuario los tuviera, verificar que una respuesta sale de ellos obligaría a ejecutar el modelo, con unos recursos de cálculo muy por encima de lo que puede permitirse un usuario, o incluso un evaluador.

La salida que propone la empresa es una prueba criptográfica: el proveedor envía con cada respuesta un fichero de unos pocos megabytes que el usuario comprueba en segundos, sin ver los pesos. Si la respuesta no sale del modelo indicado, la comprobación falla.

El objetivo no es nuevo para Anthropic. En su hoja de ruta de seguridad, el Frontier Safety Roadmap, se fijó como meta un prototipo de inferencia verificable para el 30 de septiembre de 2026. Según la empresa, la cumplió con otro proyecto, que firma su tráfico y recalcula las respuestas en un servidor de confianza; FlashProve persigue lo mismo por un camino distinto.

FlashProve: compromiso, prueba y comprobación

En un banco de taller, una caja fuerte con una huella dactilar en la puerta, una tarjeta gráfica que imprime un certificado en una cinta y una lupa ante un portátil que muestra una marca verde de visto bueno; detrás, el técnico observa.
📷 Imagen generada con IA

FlashProve es el sistema que Anthropic presentó el 2 de noviembre de 2026. Lo firma el Frontier Red Team, el equipo de la empresa que somete los sistemas de IA a pruebas de estrés para entender hasta dónde llegan sus capacidades actuales y anticipar lo que viene.

Colaboran investigadores de la EPFL, la Escuela Politécnica Federal de Lausana, universidad técnica suiza; del Instituto Tecnológico de Massachusetts (MIT), universidad estadounidense; de StarkWare, una empresa de tecnología criptográfica que contribuye a Starknet, la red de cadena de bloques construida sobre su tecnología, y de Succinct, una empresa de criptografía aplicada, autora de SP1 y de una red para generar pruebas.

El sistema tiene dos partes: el proveedor del modelo, que demuestra, y el usuario, que comprueba. Y dos fases. En la previa, que se hace una vez por modelo, el proveedor publica un compromiso con los pesos. Según Anthropic, con Llama 4 Maverick tarda unos 39 minutos y sirve para unos 16 millones de peticiones; después hay que comprometerse de nuevo.

En la fase en línea, para cada petición, el proveedor genera un fichero que, según la empresa, prueba que «el modelo comprometido produce estos tokens de salida». Cualquiera que tenga el compromiso, el texto enviado y la respuesta puede comprobarlo sin los pesos y con poco cálculo.

Una prueba que no enseña nada más

Según Anthropic, la prueba de FlashProve cumple cuatro propiedades. Si es honesta, se acepta. No se puede falsificar salvo rompiendo supuestos criptográficos ampliamente aceptados. No revela nada de los pesos, ni de los cálculos intermedios, ni de qué partes del modelo se activaron. Y es pequeña y rápida de comprobar.

Lo que no oculta es la arquitectura: cómo está organizado el modelo por dentro, sin contar los pesos. La empresa lo deja para trabajos futuros.

La herramienta es un zkSNARK, el mismo tipo de prueba que usan redes de cadena de bloques como Starknet. Según Anthropic, su construcción se apoya en funciones hash y ofrece incluso seguridad poscuántica.

Claude puso la velocidad; Lean, las garantías

Según Anthropic, fue Claude, su modelo, quien introdujo mejoras en estos zkSNARKs y construyó un sistema «sustancialmente más rápido que los sistemas de código abierto anteriores». La misma empresa admite el riesgo: Claude «a menudo toma decisiones difíciles de evaluar». Para compensarlo, las garantías de seguridad se enunciaron y demostraron en Lean, un lenguaje de verificación formal.

Se publican cinco piezas, con el código, las demostraciones y la documentación bajo licencia Apache 2.0: el artículo, un informe técnico, la descripción del protocolo, el código ejecutable —un generador de pruebas y dos verificadores, uno rápido en C++ y otro en Lean demostrablemente correcto— y las demostraciones en Lean, con un visor interactivo para revisarlas. Según la empresa, es un avance intermedio, «no un programa de investigación terminado».

El verificador en C++ es el de uso diario, pero, según Anthropic, «no tiene ninguna garantía formal». En sus pruebas, coincide con el de Lean en todos los casos.

El banco de pruebas: Llama 4 Maverick

Para medir, Anthropic usó Llama 4 Maverick, un modelo de Meta de 400.000 millones de parámetros, de los que usa unos 17.000 millones por token. Es una mezcla de expertos, y FlashProve solo funciona con modelos de ese tipo: según la empresa, el trabajo de quien demuestra es proporcional a los expertos que se activaron, no al modelo entero, y la prueba sigue ocultando cuáles fueron.

Los pesos no van en la publicación. Quien quiera repetir el experimento los descarga aparte, en una conversión pública a 4 bits hecha por terceros, bajo la licencia Llama 4 de Meta.

Cuánto cuesta hoy demostrar una respuesta

FlashProve en cifras
Medida Valor
Compromiso con los pesos (se descarga una vez) unos 6,5 MB
Fase previa, una vez por modelo unos 39 min; vale para unos 16 millones de peticiones
Lote de 24 peticiones en una H100 unos 223 s
Velocidad de prueba 110 tokens/s de lectura paralela (prefill) en una H100
Tamaño de cada prueba 18,78 MB por petición de 1.024 tokens
Comprobación de una prueba, en CPU 17 s con 24 hilos (21 s con uno)
Sobrecoste frente a vLLM, por GPU unas 72 veces (66 a 77 según la ejecución)
Sobrecoste frente a vLLM a la máxima carga probada unas 94 veces
Datos según Anthropic, medidos con Llama 4 Maverick (400.000 millones de parámetros, pesos a 4 bits). vLLM sirvió la versión FP8 del mismo modelo en ocho H100.

Las cifras son de Anthropic, medidas con la versión a 4 bits del modelo, que ocupa unos 232 GB: cada petición es una ventana de 1.024 tokens leída de una pasada (prefill) y cada prueba comprueba un solo token. Quien demuestra trabaja en un servidor con una sola GPU H100 de Nvidia y 24 núcleos de procesador. Quien comprueba lo hace en el procesador del cliente, sin GPU: descarga una vez el compromiso y, después, una prueba por petición.

El precio está en el sobrecoste. Anthropic lo mide contra vLLM, un motor de código abierto muy usado para servir modelos, con la versión en 8 bits (FP8) del mismo modelo en ocho H100 y contando por GPU. Es la última línea de la tabla, y la que más pesa.

Frente a lo anterior, un salto de escala

FlashProve frente a lo anterior
Sistema Modelo Velocidad Tamaño de la prueba Comprobación
VerInf Llama 4 Maverick 1.000 tokens en 14,3 h (DGX Spark) 93,6 GB casi un día
FlashProve Llama 4 Maverick 110 tokens/s (una H100) 18,78 MB 17 s
Attestable Gemma 4 31B (denso) 53 a 77 tokens/s (una H100) — —
Datos según Anthropic, que recopila también las cifras de VerInf y de Attestable. Attestable no ha publicado una biblioteca de código abierto.

Según Anthropic, la única prueba anterior de Llama 4 Maverick que conoce es la de VerInf, un trabajo de investigación previo. Cita también a Attestable, una empresa que ha publicado cifras con otro modelo, Gemma 4 31B, que es denso, y que no ha liberado una biblioteca de código abierto. La tabla pone las tres al lado.

La conclusión de la empresa es que demostrar una respuesta cuesta «aproximadamente 2 órdenes de magnitud» más que calcularla, «entre unas 70 y 95 veces en nuestras mediciones», y que eso es «mucho menos de lo que se esperaba». Anthropic cree que el avance debería trasladarse a más modelos y arquitecturas.

Lo que la prueba no dice

Los límites de FlashProve
Límite Qué supone
Solo decodificación voraz Se prueba una versión en números enteros del modelo; una respuesta en coma flotante o con muestreo puede dejar de coincidir
Solo mezcla de expertos El sistema aprovecha esa estructura; la arquitectura del modelo no se oculta
Contextos de hasta 1.024 tokens «Bastante cortos» frente a los cientos de miles o millones de tokens de los modelos punteros
Canales laterales Medir, por ejemplo, cuánto tarda en generarse una prueba podría revelar información de los pesos; queda fuera de alcance
Código rápido sin garantía formal No se garantiza que Lean, el informe y el código coincidan entre sí
Demostración a posteriori (post-hoc) Se prueba después y sobre una parte de los tokens, así que la garantía llega con retraso
Prototipo sin mantenimiento El repositorio no acepta contribuciones
Límites declarados por Anthropic en su artículo y en el repositorio de FlashProve.

Una prueba aceptada no dice que la respuesta sea correcta, ni que el modelo sea bueno o seguro. Según la propia definición de Anthropic, certifica una sola cosa: que «el modelo comprometido produce estos tokens de salida». Es decir, qué pesos produjeron la respuesta, no si la respuesta es buena.

Y hay letra pequeña, declarada por la empresa. Lo que se demuestra es una versión exacta en números enteros de los pesos publicados, y que cada token comprobado es la elección voraz del modelo. Una respuesta calculada con decimales en coma flotante, o generada con muestreo, puede apartarse en algún punto y dejar de coincidir. Anthropic espera que la versión entera quede muy cerca de la real, pero eso no cubre las instrucciones preparadas por un adversario.

Es, además, un prototipo de investigación. El repositorio se presenta como «un artefacto de investigación: sin mantenimiento y sin aceptar contribuciones».

Pruébalo: cuatro rutas, de menos a más

Las cuatro rutas del repositorio
Ruta Qué hace Necesita Tiempo
1. Comprobar una prueba guardada Compila cp_verify y comprueba una prueba de ejemplo Linux, bash, g++ 13 o posterior; menos de 2 GB de RAM compilar, 1 a 2 min; comprobar, menos de 2 s
2. Pruebas de juguete Autoprueba de la biblioteca en CPU Lo de la ruta 1, más make y python3; menos de 1,5 GB de RAM unos 1 min
3. Modelo pequeño Genera compromiso y prueba de un modelo sintético de 8 capas GPU H100, CUDA 13.2; 10 GB de RAM compilar, unos 29 min; ejecutar, 23 a 30 s
4. Llama 4 Maverick Descarga la versión de 4 bits (232 GB) y demuestra un token GPU H100 (80 GB) con CUDA 13.2, 330 GB de RAM y 245 GB de disco horas
Según el README del repositorio de FlashProve (versión 0.16.0).

El repositorio de FlashProve propone cuatro formas de probarlo, de menos a más exigente. Solo la primera es ligera: compila el verificador, cp_verify, y comprueba una prueba guardada. Las dos últimas piden una GPU H100 y, la cuarta, cientos de gigas de memoria y de disco.

Esa prueba guardada tiene truco, y el README lo dice: es un modelo sintético pequeño, de 8 capas, 4 expertos y un vocabulario de 512 piezas, así que «solo demuestra que el verificador funciona, no nada sobre un modelo en servicio».

El ejemplo, abierto sin ejecutar nada

Lo que hicimos con el ejemplo
Paso Comando o fichero Lo que devolvió
1. Clonar el repositorio `git clone --depth 1 https://github.com/anthropics/FlashProve.git` Versión 0.16.0, commit 9e2bdd8 del 30-10-2026; 720 MB en disco; 11 s
2. Comprobar la descarga del ejemplo `(cd examples/accepted-proof && sha256sum -c SHA256SUMS)` 9 de 9 ficheros: «La suma coincide»
3. Leer la petición, con un script propio de Python `examples/accepted-proof/example.req` 264 bytes: 66 números de 32 bits, 64 tokens más r = 60 y e = 64
4. Leer la respuesta `examples/accepted-proof/example.y` Token 199
5. Medir la prueba `examples/accepted-proof/example.proof` 4.145.300 bytes (unos 4,1 MB)
6. Leer el identificador del compromiso `examples/accepted-proof/ID.txt` `79a5a2bc7a469b40df73dedf40abeb740671e8ae8077738bd3743897aeb22183`
7. Comprobar la prueba (ruta 1) `verifier/build.sh` y después `bin/cp_verify examples/accepted-proof/config examples/accepted-proof/ivk examples/accepted-proof/example.req examples/accepted-proof/example.y examples/accepted-proof/example.proof -id "$(cat examples/accepted-proof/ID.txt)"` No ejecutado. Según el README: última línea YES y código de salida 0
Datos propios (03-11-2026), sin GPU y sin ejecutar ningún código descargado. La última fila recoge lo que indica el README; no es una salida propia.

El 3 de noviembre de 2026, hacia las 10:05, recorrimos la parte de la ruta 1 que no necesita ejecutar nada descargado: clonar el repositorio, comprobar que los ficheros del ejemplo llegaron íntegros y leer qué se está demostrando. Sin GPU y sin coste.

La suma de comprobación tiene un límite que conviene no olvidar: solo garantiza que la descarga está entera, no que la prueba sea válida. Eso lo decide el verificador.

Lo que se demuestra cabe en tres ficheros. La petición, example.req, son 64 tokens más dos valores, r y e; la respuesta, example.y, es el token siguiente, el 199. Según el README, la prueba afirma que los tokens 61, 62 y 63 y ese token siguiente son, cada uno, el que el modelo comprometido pone primero.

La comprobación completa exige compilar el verificador, y no lo compilamos ni lo ejecutamos. El README indica que, con este ejemplo, la última línea debe ser YES y el código de salida, 0.

Cómo se lee el veredicto

Las respuestas de cp_verify
Código de salida Última línea Qué significa
0 YES Prueba aceptada
1 NO: <motivo> Prueba rechazada
5 NOT CHECKED: <motivo> Sin veredicto
Según el README del repositorio de FlashProve.

cp_verify da su veredicto con dos señales a la vez, el código de salida y la última línea, y el README pide leerlas juntas. Un código 0 con YES (o WITHIN LIMITS) es una prueba aceptada; un código 1 con NO, una rechazada o un fallo local, y el código 5, que no hay veredicto; otros códigos señalan llamadas o ficheros erróneos.

Un solo bit basta para que la rechace

Qué rechaza el verificador
Qué se altera Respuesta del verificador
Un bit de la prueba NO: proof-refused
El último byte de la prueba, cortado NO: proof-refused
Un token del texto enviado NO: proof-refused
Un token de la respuesta NO: proof-refused
Otro token tras la petición NO: reply-differs
Otro identificador de compromiso NO: model-statement
Un bit de la clave NO: key-refused
Siete de los 10 conjuntos alterados que documenta el README de examples/rejected-proofs del repositorio de FlashProve; según ese README, el verificador los rechaza todos con código de salida 1. No lo hemos ejecutado.
Sobre un escritorio, dos certificados con una cuadrícula de casillas: uno intacto, con su sello de lacre entero, y otro con una sola casilla marcada en rojo y el sello partido en dos, que un hombre señala con el dedo, sonriente.
📷 Imagen generada con IA

El repositorio trae también el caso contrario. Según su README, un script altera los ficheros del ejemplo uno a uno y el verificador los rechaza todos con código 1: «10 conjuntos alterados: todos rechazados». La tabla recoge lo que documenta ese README; no es una ejecución propia.

Según ese mismo documento, cambiar un bit de la prueba, recortar su último byte o tocar un token del texto enviado o de la respuesta hace que la prueba se rechace. Usar otro identificador de compromiso, o alterar un bit de la clave, falla por otra vía, con su propio motivo.

Dos tareas que el verificador deja al usuario

En uso real, el README deja dos tareas en manos de quien comprueba. La primera, conseguir el identificador del compromiso «antes de enviar el prompt, de quien responde por el modelo, no a través del servidor que estás comprobando». Y añade: «Nunca lo tomes de los ficheros que acompañan a una prueba».

La segunda, construir uno mismo el fichero de la petición con el texto enviado y la respuesta recibida, porque, según el README, «nada comprueba que el fichero contenga tu prompt y tu respuesta». Una prueba impecable sobre una petición que no es la tuya no garantiza nada sobre tu respuesta.

Conclusión

Según Anthropic, hoy nadie puede comprobar de qué modelo sale una respuesta, y FlashProve demuestra justo eso: no si la respuesta es buena, sino qué pesos la produjeron. La empresa ve ahí una herramienta para evaluadores independientes, para clientes que contratan a través de intermediarios y para reguladores. Por ahora es un prototipo de investigación sin mantenimiento, que solo cubre mezclas de expertos, textos de hasta 1.024 tokens y respuestas sin muestreo, y que cuesta decenas de veces más que servir sin prueba. Lo que falta está escrito en su propia lista de límites: contextos largos, otras arquitecturas y respuestas con muestreo.

Fuentes primarias

Comentarios

Sé respetuoso. Los comentarios se moderan.

    La continuación natural

    Aprende IA a tu ritmo con nuestros cursos gratuitos.

    En nuestra plataforma de aprendizaje TAKU podrás acceder a este y muchos otros cursos de manera totalmente gratuita.

    APRENDER CON TAKU

    ← Volver al blog