VerifAI Scan · motor v4.2
Detector de texto generado por IA
Sube un documento y nuestro motor estima la probabilidad de que haya sido escrito por una IA. Análisis privado: el procesamiento ocurre en tu equipo.
- Extrayendo texto del documento
- Segmentando en oraciones
- Comparando con el corpus de referencia
- Calculando perplejidad y ráfaga
- Generando veredicto
Informe de detección
Pasajes marcados
Nada de esto era real.
Este informe es 100 % aleatorio. Tu archivo nunca salió de tu navegador: no se leyó, no se subió, no se analizó. La barra de progreso era una demora artificial y el porcentaje salió de Math.random(). Pulsa «Analizar de nuevo» sobre el mismo archivo y obtendrás otro veredicto. Esa es la idea.
Lee por qué construí esto →Cómo funciona (de verdad)
Por qué esta página demuestra algo
Parece un producto: subes un archivo, ves una barra de progreso y recibes un informe con su porcentaje. Pero no analiza nada. El archivo nunca se lee ni sale de tu navegador, la demora es artificial (y más larga si el archivo es más grande, para que parezca que se esfuerza) y el veredicto sale de un generador de números aleatorios.
Ese es justamente el punto del artículo: si no puedes auditar el proceso, no tienes forma de distinguir un análisis real de esto. Una caja negra en línea podría devolverte exactamente este informe y tú no notarías la diferencia.
Y ojo: puede que detrás de un servicio real sí haya un modelo de lenguaje de verdad. No lo niego. Pero eso no lo salva, porque la evidencia actual nos dice que un LLM es un ente no determinista (la misma entrada puede dar veredictos distintos en cada corrida) e inviable para este tipo de análisis. Que haya un modelo del otro lado no convierte su salida en una medición confiable.
El “motor” completo, sin recortes, es esto:
// Parece el endpoint de un detector real. Dice que analiza tu documento...
async function analyze(file: File): Promise<Report> {
// ...pero nunca lee el archivo. Solo espera, en función del tamaño,
// para que una subida más grande "parezca" más trabajo.
await esperaProporcionalA(file.size);
// ¿Y el veredicto? Puro azar.
const probabilidadIA = Math.round(Math.random() * 100);
return {
probabilidadIA,
veredicto: probabilidadIA >= 65 ? "probable IA" : "probable humano",
confianza: 50 + Math.round(Math.random() * 49),
};
}