Instructions to use ttech12/Ai-detector with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use ttech12/Ai-detector with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-classification", model="ttech12/Ai-detector")# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForSequenceClassification tokenizer = AutoTokenizer.from_pretrained("ttech12/Ai-detector") model = AutoModelForSequenceClassification.from_pretrained("ttech12/Ai-detector", device_map="auto") - Notebooks
- Google Colab
- Kaggle
Detector de texto con IA — versión de revisión (con entrenamiento adversario)
Una de las dos versiones del detector. Esta es la de revisión: marca de más a propósito, para que el autor reescriba los fragmentos señalados hasta que el indicador baje y el documento quede listo para enviarse a una revista sin ser flageado como IA.
| Revisión (esta) | Equilibrada | |
|---|---|---|
| IA parafraseada con DIPPER (2 pasadas) | 90.8% | 5% |
| Texto humano reformulado con una herramienta | 40% como IA + 30% gris | 0% |
| Texto humano pulido con IA | 35% | 62% |
| IA sin parafrasear | 98.9% | 99.8% |
| Claude escribiendo desde cero | 100% | 100% |
La diferencia de fondo: esta versión se entrenó también con textos de IA parafraseados por DIPPER, un modelo hecho para evadir detectores. Con eso aprendió a reconocer que un texto pasó por un parafraseador, no solo que el contenido sea de máquina. Por eso cierra la vía de evasión y, al mismo tiempo, marca al autor que reformula su propio texto con una herramienta: las ideas son suyas, pero las palabras no.
Cuándo usar esta versión: como señal de revisión sobre un texto propio. Marcar de más es lo deseable, porque empuja a reescribir con palabras propias.
Cuándo usar la equilibrada: cuando el resultado pueda tener consecuencias para alguien.
Ninguna de las dos sirve como prueba de deshonestidad. Que un texto salga limpio no demuestra nada, y que salga marcado tampoco prueba nada por sí solo.
Uso
import torch
from transformers import AutoModelForSequenceClassification, AutoTokenizer
tok = AutoTokenizer.from_pretrained("ttech12/Ai-detector")
model = AutoModelForSequenceClassification.from_pretrained(
"ttech12/Ai-detector", dtype=torch.float32).eval()
enc = tok(texto, truncation=True, max_length=512, return_tensors="pt")
p_ia = torch.softmax(model(**enc).logits, -1)[0, 1].item()
Ensamble completo con Binoculars (Qwen2.5-3B base e instruct), en calibration.json:
puntuación = 0.866·logit(p_ia) − 2.223·binoculars − 2.173
ia si puntuación > 1.44 (1% de falsos positivos)
gris si puntuación > −9.12 (5%)
Con menos de 150 palabras no se emite resultado.
Entrenamiento
- Textos humanos anteriores a 2022 (antes de ChatGPT): resúmenes de OpenAlex y fragmentos de prosa de tesis de acceso abierto, con el idioma verificado.
- Contraparte de IA: por cada texto humano, un LLM escribe otro con el mismo título, idioma y extensión, de modo que el modelo aprende el estilo y no el tema.
- Ocho generadores: gpt-oss:20b, qwen3:14b, qwen3:32b, gemma3:12b, llama3.1:8b, mistral-nemo:12b, Claude y DIPPER (parafraseo adversario).
- 28.238 textos en total. 3 épocas, lote 16, tasa 2e-5, longitud 512. Los pesos se cargan en float32: el checkpoint original viene en fp16 y con esos pesos AdamW produce NaN.
Falsos positivos sobre escritura de alumnos reales
| Corpus | n | Marcados como IA |
|---|---|---|
| PERSUADE 2.0 (ensayos escolares, inglés) | 1.200 | 0.2% |
| Tesis en español ajenas al corpus | 973 | 0.1% |
| CATyPI (tesis de computación en español) | 182 | 0.0% |
| Documentos completos de más de 1.200 palabras | 40 | 0% |
Código, corpus y el informe completo: Turnit-Ai-in-.
- Downloads last month
- 6
Model tree for ttech12/Ai-detector
Base model
microsoft/mdeberta-v3-base