
Vulnerabilidad de jailbreak en las profundidades de salida temprana de los LLM. Publicado en NeurIPS 2026 en el taller FLMSec
¿Cómo cambia la salida temprana la vulnerabilidad de un modelo de lenguaje a los jailbreaks? Estudiamos ataques GCG sobre Balcony-LLaMA2-7B y Balcony-LLaMA3-8B en las capas 15, 18, 21 y profundidad completa (32), usando HarmBench y AdvBench.
TAO es una extensión planificada con código experimental. Las ejecuciones anteriores de 1B fueron pruebas de desarrollo; ninguna de las dos aporta resultados a este estudio.
GCG durante 150 pasos sobre 50 comportamientos por benchmark, ejecutado en una única GPU NVIDIA RTX PRO 6000 Blackwell. Las figuras y tablas a continuación provienen directamente del artículo, que es la fuente de verdad para los resultados reportados.







Requiere Linux, Python 3.12, una GPU NVIDIA y un controlador compatible con CUDA 12.8. Desde la raíz del repositorio, instala el entorno e inicia una pequeña ejecución de GCG:
bash scripts/setup.sh
.venv/bin/python scripts/run.py experiment --model 7b --stage gcg \
--benchmarks harmbench --n-behaviors 2 --num-steps 5 --results-dir results/runs/pilot
La configuración inicializa los submódulos, aplica los parches del toolkit e instala .venv/.
Para checkpoints con acceso restringido, acepta sus licencias de Hugging Face y ejecuta
.venv/bin/hf auth login.
Para GCG, evaluación y evaluación de utilidad en todas las salidas:
.venv/bin/python scripts/run.py experiment --model 7b
Elige --model 7b o --model 8b. Las nuevas salidas permanecen locales en results/runs/<model>/.
Usa --dry-run para inspeccionar los comandos sin cargar modelos.
Referencia de comandos.
| Ruta | Contenido |
|---|---|
adapter/ | Código y wrappers del modelo con salida temprana |
experiments/ | Implementaciones de ataque, evaluación y análisis |
scripts/ | Configuración inicial y el runner compartido |
results/ | Figuras y tablas del artículo, archivos históricos y ejecuciones locales |
third_party/ | Dependencias fijadas y avisos de licencia |
Los archivos sin procesar y las exportaciones antiguas no están sincronizados con el artículo. Mantén las ejecuciones de 7B con y sin plantillas de chat por separado.
Las dependencias están fijadas en .gitmodules; las correcciones del toolkit están en patches/.