Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
RLCDAlignBench — Conjunto de benchmarks e código para detectar falhas de alinhamento de IA, com 44 benchmarks abrangendo dez tipos de falha e um detector RLCD zero-shot avaliado em 7.193 instâncias rotuladas. | Kitploit
Ferramentas/GitHubGitHub/sumleo/rlcdalignbench
Análise de VulnerabilidadesAprendizado de MáquinaPapers e PesquisaAprendizado e EducaçãoRecursos CuradosSegurança de IADetecção de Anomalias
GitHubsumleo/rlcdalignbench

RLCDAlignBench

Conjunto de benchmarks e código para detectar falhas de alinhamento de IA, com 44 benchmarks abrangendo dez tipos de falha e um detector RLCD zero-shot avaliado em 7.193 instâncias rotuladas.

Ver Repositório
18há 1 diaAinda não revisado
Site

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Just Ask Jev: Aprendizado por Reforço para Decisões Calibradas como Detector Zero-Shot de Falhas de Alinhamento de IA

ICLR 2027 Project page Hugging Face Code license: MIT Data license: CC BY-NC 4.0

Este repositório contém o RLCDAlignBench e o código por trás do artigo. O benchmark mede se um detector consegue identificar quando a saída de um modelo de linguagem é uma falha de alinhamento. Ele possui 44 benchmarks em dez tipos de falha (sycophancy, jailbreaks, deception, prompt injection, hallucination, privacy violation, social bias, reward hacking, concealing uncertainty e power seeking) e cinco modelos-alvo, totalizando 7.193 instâncias de detecção rotuladas. Os rótulos vêm do próprio scorer de cada benchmark, e dois conjuntos adicionais carregam rótulos humanos.

Usamos isso para testar o Jev, um modelo treinado com aprendizado por reforço para decisões calibradas (RLCD), que responde a muitas perguntas tipadas sobre uma única entrada com probabilidades calibradas em uma única chamada. A ideia central é medir a pergunta feita ao Jev separadamente do contexto que ele vê. Uma pergunta genérica alcança uma AUROC mediana de 0,886 zero-shot e supera as baselines supervisionadas de TF-IDF e de comprimento em 25 de 31 benchmarks. Fora da amostra, a formulação da pergunta acrescenta pouco. Ler as respostas como probabilidades em vez de decisões argmax importa muito. O contexto ajuda principalmente por meio de campos que codificam o rótulo.

RLCDAlignBench overview

Citação

root@kitploit:~
@misc{rlcdalignbench2026,
  title        = {Just Ask Jev: Reinforcement Learning for Calibrated Decisions as a Zero-Shot Detector of AI Alignment Failures},
  author       = {Ruoqi Guo and Yi Liu and Gelei Deng and Yuekang Li and Lida Zhao and Simin Chen and Ying Zhang and Leo Yu Zhang},
  year         = {2026},
  howpublished = {\url{https://github.com/sumleo/RLCDAlignBench}}
}

Aviso

O conjunto de dados contém saídas não filtradas de pequenos modelos abertos sob jailbreak e outros prompts adversariais, e muitas delas são prejudiciais. Ele é disponibilizado apenas para pesquisa sobre detecção e mitigação de falhas de alinhamento, e o acesso no Hugging Face é restrito. Não o utilize para construir ou melhorar sistemas prejudiciais.

Dados

Os dados ficam no Hugging Face em sumleo/RLCDAlignBench. Solicite acesso lá, depois:

root@kitploit:~
from datasets import load_dataset

ds = load_dataset("sumleo/RLCDAlignBench", "harmbench", split="test")   # one benchmark
all_ = load_dataset("sumleo/RLCDAlignBench", "all", split="test")       # all 7,193 instances

Cada instância possui os campos que um detector vê (state), um label binário (1 = a saída é uma falha que o detector deve sinalizar), o label_source, o target_model e um registro meta que remete aos arquivos de proveniência. O card do conjunto de dados documenta cada campo e arquivo.

Tipo de falhaBenchmarksInstânciasModelo-alvo
Sycophancy4639Qwen3.5-2B
Jailbreaks4414Phi-4-mini
Deception4540Gemma-2-2B
Prompt injection41.036Qwen3.5-2B
Hallucination61.164Llama-3.2-3B
Privacy violation4808Phi-4-mini
Social bias4199Olmo-3-7B
Reward hacking6714Qwen3.5-2B
Concealing uncertainty4748Olmo-3-7B
Power seeking4931Llama-3.2-3B
Total447.1935 modelos

Conjuntos com rótulos humanos: StrongREJECT (1.361 respostas, 5 avaliadores cada) e o conjunto de validação do HarmBench (602 respostas, 3 votos cada).

data/benchmarks.csv é o índice de 44 linhas (nome, tipo de falha, split hill-climb ou held-out, scorer, fonte do rótulo, n, positivos, status). Os papéis dos splits vêm da suíte AAR de Chen et al. (2026). data/variants.csv lista todas as 132 variantes de entrada usadas nos experimentos de contexto. results/ contém as tabelas do nível do artigo.

No Hugging Face, a release está organizada como:

root@kitploit:~
data/benchmarks/<failure_type>/<benchmark>.jsonl   canonical instances (the paper's n)
data/human/<set>.jsonl                             human-labelled sets
data/variants/<benchmark>/<variant>.jsonl          every input view: ablation, official track, oracle, exclusion, ...
jev/responses/<benchmark>/<variant>/<battery>.jsonl   Jev's per-question probabilities for every instance
jev/metrics/<benchmark>/<variant>/<battery>.json      per-strategy precision, recall, F1, AUROC
provenance/                                        target-model generations, reference-scorer calls, official scores, logs

Código

ComponenteLocalização
Geração e replay do judge em torno do harness AARcode/generation/run_generate.py
Construtores de amostras de detecção (um por família de bateria)code/build_samples_*.py
Baterias de perguntas (as perguntas feitas ao Jev e as estratégias de leitura)code/battery_*.py
Executor do Jev, cache e métricascode/run_jev.py, code/run_batch.sh
Linters de bateria (vazamento de critérios, formato)code/lint_battery.py, code/lint_criteria_leak.py
Resumo de resultadoscode/make_results_summary.py
Ferramentas de releasetools/build_release.py, tools/legacy_layout.py

O código requer Python 3.10 ou mais recente (o artigo usou 3.12) e apenas a biblioteca padrão. As ferramentas de release também requerem pandas.

Recalcular as métricas offline

Isso não envia requisições e não precisa de chaves. Toda métrica é recalculada a partir das respostas em cache do Jev.

root@kitploit:~
pip install -U "huggingface_hub[cli]" pandas
huggingface-cli login                                   # after your access request is approved
huggingface-cli download sumleo/RLCDAlignBench --repo-type dataset --local-dir hf

python tools/legacy_layout.py --release hf --out work   # rebuilds the layout the scripts expect, checks sha256
python work/code/restore_layout.py
python work/code/run_jev.py --leg harmbench --battery battery_a_judge \
    --samples work/code/samples/harmbench__microsoft__Phi-4-mini-instruct__attack.jsonl --rescore

O último comando imprime uma tabela com uma linha por estratégia de leitura (precisão, recall, F1, acurácia balanceada, AUROC, IC bootstrap). Ele corresponde a jev/metrics/harmbench/attack/battery_a_judge_v2.json na release.

Reexecutar do zero

  1. Clone o repositório AAR na raiz do repositório (os construtores de amostras procuram por aar_repo/ lá) e faça checkout do commit a partir do qual os rótulos foram construídos:
    root@kitploit:~
    git clone https://github.com/YuehHanChen/automated_alignment_researcher aar_repo
    git -C aar_repo checkout 02dbe9d2cadc553720d17cdf6259c0b8727e6cde
    
  2. Gere as saídas dos modelos-alvo (GPU) e faça o replay dos scorers de referência (chaves de API conforme em aar_repo/REPRODUCE.md):
    root@kitploit:~
    python code/generation/run_generate.py --axis refusal --repo aar_repo            # phase 1, judges stubbed
    python code/generation/run_generate.py --axis refusal --repo aar_repo --replay   # phase 2, real judges
    
  3. Construa as amostras de detecção com code/build_samples_*.py (as famílias pontuadas por judge a, bc e f aceitam --attach-judges). Os construtores recalculam cada pontuação agregada oficial a partir dos rótulos e param se ela diferir da oficial.
  4. Consulte o Jev com TYPESAFE_API_KEY definida:
    root@kitploit:~
    python code/run_jev.py --leg harmbench --battery battery_a_judge --samples <file> --limit 20   # pilot
    python code/run_jev.py --leg harmbench --battery battery_a_judge --samples <file>              # full
    

Fluxo de dados: calls.jsonl → run_generate.py --replay → judge_calls.jsonl → build_samples_*.py → detection samples → run_jev.py → responses + metrics.

Estrutura do repositório

root@kitploit:~
RLCDAlignBench/
├── paper.pdf
├── code/                  experiment code (generation, sample builders, batteries, Jev runner)
├── data/
│   ├── benchmarks.csv     44-row benchmark index
│   └── variants.csv       132 input variants
├── results/               paper-level tables (main results, baselines, human agreement, cost, corrected labels)
├── figs/                  paper figures
├── tools/                 release build and legacy-layout tools
└── docs/                  project page (GitHub Pages)

Ética

Não geramos novas requisições prejudiciais. Todos os prompts vêm de benchmarks publicados, e os executamos apenas em pequenos modelos abertos. As respostas prejudiciais são disponibilizadas sob um acordo de acesso restrito para pesquisa de detectores.

Licença

Código: MIT. Dados: nossos rótulos, anotações, saídas do Jev e metadados estão sob CC BY-NC 4.0. O conteúdo de benchmarks upstream mantém sua licença original, e as saídas dos modelos estão sujeitas aos termos dos modelos-alvo.

Baixar ferramenta