BiVelio Shield: ChatGPT y Claude privados — gratis, 100 % local, sin cuenta

Medido

Cada cifra, con su fecha, su máquina y el fichero del que sale

Esta página reúne las mediciones que cita el resto del sitio. Cada tabla dice el día en que se tomó y la máquina en que corrió, y un test vuelve a leer cada número del fichero que lo produjo: cuando ese fichero se mueve y la página no, la construcción se pone roja.

Lo que no está aquí es lo que nadie ha medido. Donde la fuente no registra la máquina, la página lo dice en vez de poner una; donde el corpus es sintético, la frase que lo dice viaja con el número.

El motor determinista, sobre el corpus adversarial

La capa con control por dígito de verificación: documentos de identidad, IBAN, tarjetas, claves y tokens. Dos pistas sobre el mismo generador — los valores escritos entre espacios, y los mismos valores escritos como los escribe la gente: pegados a un dígito suelto, con prefijo, en cifras arábigo-índicas, con una marca combinante dentro.

Corpus: 1.000 documentos en cuatro idiomas, 4.522 entidades etiquetadas, 443.724 caracteres. Máquina: Apple M4 Pro, macOS 15.7.4, CPython 3.13.7.

PistaSemillaPrecisiónRecallFuga residualSuperficie de fuga parcialIda y vuelta
Cooperativa12341,00001,00000,00 %01,000000
Cooperativa421,00001,00000,00 %01,000000
Cooperativa71,00001,00000,00 %01,000000
Adversarial12340,99401,00000,00 %01,000000
Adversarial420,98740,99890,00 %00,999641
Adversarial70,98941,00000,00 %01,000000

Medido el 9 de agosto de 2026 · 1.000 documentos por pasada, tres semillas, las dos pistas.

Las tres filas adversariales se publican con las demás: dos quedan por debajo de los suelos que afirma la integración continua, porque allí se tira una sola semilla y esta tabla tira tres. Lo que se sostiene en las seis pasadas es el par por el que se juzga una frontera de fuga de datos: fuga residual en cero y superficie de fuga parcial en cero.

Documentos, en el gateway

Extracción y detección sobre el corpus de documentos, una petición cada vez. Son cifras de petición única: los dos pasos van de CPU y el intérprete los serializa, así que quien gobierna la concurrencia es el semáforo de documentos y la reserva de procesos, no esta tabla.

DocumentoExtracciónDetecciónTotalValores encontrados
PDF de una página con capa de texto1,3 ms1,9 ms3,2 ms6/6
Documento de Word: cuerpo y propiedad de autor0,6 ms2,1 ms2,7 ms6/6
Hoja de cálculo: celdas, nombre de hoja y propiedades1,4 ms1,1 ms2,5 ms6/6

Medido el 29 de agosto de 2026 en fernando · AMD EPYC-Genoa, 16 vCPU, 30 GB.

El mismo trabajo en el navegador
92 ms de principio a fin para un PDF de una página de 3 MB

La ruta del navegador es otra implementación (pdf.js y pdf-lib) y el propio banco de pruebas dice que no es comparable con las filas de arriba, así que se publica en su propia línea y nunca dentro de esa tabla.

Determinista frente a NLP

La capa determinista no busca nombres de personas; de eso se ocupa la capa de NLP. Esto es lo que deja atrás cada pila sobre el mismo corpus: la proporción de valores PERSON y LOCATION del oro que siguen presentes en el texto que sale.

Corpus: 400 documentos, 800 entidades del oro, semilla 2026.

PilaFuga residualValoresTiempo de reloj
NER nulo (control)100,000 %800/8000,1 s
Determinista + Presidio4,875 %39/8003,3 s
Determinista + Presidio + GLiNER0,000 %0/8007,1 s

Medido el 12 de septiembre de 2026 · máquina: development laptop.

El cero no es una promesa de cero en producción: el corpus es sintético y sus entidades del oro son solo PERSON y LOCATION, así que no dice nada de la prosa real, ni de las direcciones, ni de las categorías especiales. La fila de control al cien por cien es la que hace legible el cero: sin ella, un cero no se distingue de una escala rota.

Las tres pilas de nombres

Lo que añade el modelo multilingüe sobre el corpus etiquetado del propio proyecto. Esta medición es la razón por la que se entrega apagado.

Corpus: 300 documentos, 50 por idioma, 6 idiomas.

PilaPor documentoRecallPrecisiónRecall en catalán
Presidio3 ms0,9900,9051,000
Presidio + GLiNER13 ms1,0000,8301,000
+ GLiNER multilingüe72 ms1,0000,7871,000

Medido el 12 de septiembre de 2026.

El modelo multilingüe no encuentra ni un nombre que las otras dos capas no encuentren ya, tampoco en catalán —Presidio lleva su propio modelo catalán—. Tarda 5,5 veces más y marca 39 tramos de más que no son nombres: el mismo texto de 10.000 caracteres pasa de 1.118 ms a 3.081 ms.

La fuente registra la fecha y el corpus de esta comparación, no la máquina. Lo que se traslada de una caja a otra es la proporción entre las tres configuraciones, no los milisegundos.

Ese corpus es sintético, así que un recall de uno no es una afirmación sobre la escritura real. La fuga residual publicada de la capa de nombres es la de la tabla de arriba.

El plano de nombres: memoria y workers

Medido el 12 de septiembre de 2026 dentro de la imagen del plano en un CCX33 · Falkenstein. No se comparte nada entre procesos, así que el número de workers es una división y no una preferencia.

Intérprete vacío
26 MB
Modelos cargados
3.331 MB, en 13,9 s
Tras un prompt de 10.000 caracteres
3.412 MB
Workers
6 procesos, 20,5 GB. Ocho serían 27,3 GB, por encima del techo de 26 GB que fija el compose.

La tabla de latencia de este plano —p95 por tamaño de texto más la ida y vuelta medida— se publica en Cómo funciona y no se copia aquí.

Contra lo que guardaron los proveedores

Medido el 19 de septiembre de 2026 con la extensión 0.9.0, commit 225bcd18: 4 ficheros sintéticos probados contra 2 proveedores. Llegaron a enviarse 3; la extensión detuvo 1 antes de que saliera del navegador. Lo que guardó cada proveedor se leyó de su copia de la conversación, no de la pantalla, que rehidrata.

FicheroProveedorMarcadores guardadosVeredicto
Documento de Word con un IBAN en el texto y una foto de documento de identidad incrustadaChatGPT1Sin fuga
PDF con capa de texto, documento de identidad e IBANChatGPT2Sin fuga
PDF escaneado, solo imagenChatGPTno se envióDetenido
El mismo PDF con capa de textoClaude2Sin fuga

El fichero escaneado no llegó a enviarse: ninguna página tenía capa de texto y la extensión canceló el envío. No finge tapar lo que no puede leer, así que su fila no lleva marcadores ni veredicto de fuga, sino su propio estado.

Ficheros probados: 4 · Enviados: 3 · Detenidos antes de salir: 1 · Proveedores: 2 · Fugas sobre lo enviado: 0 · Hallazgos registrados: 7

Los marcadores, fichero a fichero, están en Cómo funciona. Ninguno de los hallazgos de aquel día es una fuga; el artefacto los nombra uno a uno.

El paquete que se publica

Dos artefactos, no uno. Lo que la Chrome Web Store sirve hoy es el fichero que instala quien lee esto; lo que este repositorio ha construido y todavía no ha subido es otro fichero distinto. Los dos están abajo, cada uno con el día en que se leyó o se construyó, junto con los permisos que Chrome le concede a la extensión y los sitios en los que puede correr.

Lo que sirve la tienda — el CRX firmado que instala quien lo lee:

Versión que sirve la tienda
0.9.0
Paquete que sirve la tienda
1.098.014 bytes, leídos del servicio de actualización de Chrome el 20 de septiembre de 2026

Lo que ha construido este repositorio — el zip que se sube, y las comprobaciones hechas sobre él:

Preparado aquí, todavía sin subir
Versión 0.9.2 — 1.119.692 bytes, construido el 21 de septiembre de 2026
Comprobaciones del motor dentro del zip
63/63, ejecutadas contra el motor empaquetado y no contra el fuente
Chrome mínimo
116

Las dos difieren siempre que hay una construcción esperando a subir, y ese hueco es lo normal. Lo que no era normal es lo que esta página hacía hasta hoy: imprimía la cifra preparada debajo de la palabra publicado, y así afirmaba una versión y un tamaño que la tienda no ha servido nunca.

Permisos (3):

  • storage
  • scripting
  • alarms

Sitios (4):

  • https://chatgpt.com/*
  • https://chat.openai.com/*
  • https://claude.ai/*
  • https://licensing.bivelio.com/*

Sitio opcional, que solo se pide si el lector lo enciende:

  • https://gemini.google.com/*

Un zip guarda fechas de modificación, así que dos construcciones de los mismos ficheros dan resúmenes distintos y un resumen no identifica nada. De este artefacto se publican sus bytes y el día en que se construyó; la comprobación que significa algo ejecuta el motor de dentro del paquete, no el del repositorio. La tienda sirve un CRX —los mismos ficheros más la cabecera de firma que añade la propia tienda al publicar—, así que su tamaño no es el del zip y esta página no resta el uno del otro.

De dónde salen estos números

Cada tabla de arriba cita su fichero. La página que recorre paso a paso qué hace el producto con ellos es «Cómo funciona»; el motor se puede ejecutar sobre tu propio texto en el banco de pruebas.