Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Strumenti/GitHubGitHub/cucu220123/safety-awareness
Machine LearningPaper e RicercaApprendimento e FormazioneSicurezza dell'IA
GitHubcucu220123/safety-awareness

safety-awareness

Codice di ricerca per estrarre e addestrare direzioni di consapevolezza della sicurezza in LLM multimodali, al fine di migliorare il comportamento di rifiuto limitando la deriva su compiti benigni.

Vedi Repository
6 giorni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Consapevolezza del Trasferimento della Sicurezza per la Deriva di Sicurezza Cross-Modale

Implementazione ufficiale di Transfer Safety Awareness for Cross-Modal Safety Drift in Multimodal Large Language Models (EMNLP 2026 Findings).

Questa repository contiene la pipeline della direzione di consapevolezza della sicurezza Qwen3-VL. Estrae una direzione di attivazione legata al rifiuto da esempi multimodali dannosi e innocui, seleziona la direzione che migliora il comportamento di rifiuto limitando la deriva dei compiti benigni e, opzionalmente, addestra un vettore di consapevolezza della sicurezza specifico per la direzione.

Il codice supporta attualmente Qwen/Qwen3-VL-8B-Instruct tramite Hugging Face Transformers.

Struttura della Repository

root@kitploit:~
.
├── artifacts/directions/       # Direzione selezionata precalcolata e metadati
├── data/csv/                   # Manifesti CSV utilizzati dalla pipeline
├── data/images/                # Radici delle immagini locali (non incluse)
├── directions/                 # Estrazione e selezione della direzione
├── models/                     # Utilità per modello e processore Qwen3-VL
├── training/                   # Addestramento della direzione di consapevolezza della sicurezza
├── utils/                      # Utilità per gli hook di attivazione
├── config.py
├── run_pipeline.py             # Punto di ingresso per generazione e selezione della direzione
└── requirements.txt

Installazione

Si consigliano Python 3.10+ e un'installazione di PyTorch con supporto CUDA.

root@kitploit:~
git clone https://github.com/cucu220123/transfer-safety-awareness.git
cd transfer-safety-awareness
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

La prima esecuzione scarica Qwen/Qwen3-VL-8B-Instruct da Hugging Face. Assicurarsi che la macchina abbia memoria GPU sufficiente e di aver accettato eventuali termini del modello richiesti dal fornitore.

Preparazione dei Dati

La repository include i manifesti CSV utilizzati negli esperimenti, ma non ridistribuisce i dataset di immagini sorgente. Ottenere le immagini dai fornitori originali dei dataset e posizionarle sotto queste radici relative al progetto:

root@kitploit:~
data/images/vlsafe_images
data/images/vlsbench_imgs
data/images/mmvet_images

La mappatura è:

Le radici delle immagini e i percorsi CSV possono essere sovrascritti senza modificare il codice:

root@kitploit:~
export VLM_HARMFUL_IMAGE_ROOT=/path/to/vlsafe_images
export VLM_HARMLESS_IMAGE_ROOT=/path/to/vlsbench_imgs
export VLM_KL_IMAGE_ROOT=/path/to/mmvet_images
export VLM_HARMFUL_CSV=/path/to/harmful.csv
export VLM_HARMLESS_CSV=/path/to/harmless.csv
export VLM_KL_CSV=/path/to/benign_vqa.csv

Si prega di rispettare le licenze e i termini di ciascun dataset sorgente durante il download o l'utilizzo di immagini e manifesti.

Generare e Selezionare una Direzione

Per eseguire la generazione delle direzioni candidate e la selezione basata su validazione:

root@kitploit:~
CUDA_VISIBLE_DEVICES=0 python run_pipeline.py --direction_only

Il comando utilizza 128 esempi di addestramento e 32 di validazione per suddivisione per impostazione predefinita. Scrive i risultati intermedi in artifacts/direction_runs/<model-name>/ e salva la direzione selezionata in:

root@kitploit:~
artifacts/directions/qwen3vl_refusal_direction.pt
artifacts/directions/qwen3vl_refusal_direction_metadata.json

Utilizzare --model_path per puntare a una directory locale del modello o a un altro identificatore Hugging Face compatibile. Il flag --skip_filter disabilita la fase di filtraggio del punteggio di rifiuto.

La repository contiene già un artefatto di direzione precalcolato per il checkpoint Qwen3-VL predefinito, quindi questa fase può essere saltata quando tale artefatto è appropriato per la propria configurazione.

Addestrare la Direzione di Consapevolezza della Sicurezza

L'addestramento aggiorna la direzione selezionata con gli obiettivi di compito benigno e di rifiuto utilizzati nel codice dell'articolo. Un esempio con quattro GPU è:

root@kitploit:~
CUDA_VISIBLE_DEVICES=0,1,2,3 torchrun --nproc_per_node=4 --master_port=29501 \
  -m training.train_safety_awareness_direction \
  --epochs 8 \
  --batch_size 1 \
  --grad_accum_steps 1 \
  --lr 5e-3

Gli output dell'addestramento vengono scritti in outputs/qwen3vl_safety_awareness_train/ per impostazione predefinita. Le opzioni utili includono --model_path, --direction_pt, --direction_meta, --artifact_dir, --epochs, --batch_size e --lr; eseguire python -m training.train_safety_awareness_direction --help per l'elenco completo.

Note sulla Riproducibilità

  • Impostare CUDA_VISIBLE_DEVICES e utilizzare la stessa revisione del modello, gli stessi manifesti di input e gli stessi file immagine per risultati comparabili.
  • Il caricatore di dati assegna le righe a train/validation/test utilizzando la colonna split del CSV quando presente; altrimenti utilizza deterministicamente question_id % 10.
  • I checkpoint del modello e i dataset di immagini scaricati sono intenzionalmente esclusi da questa repository.
  • Le esecuzioni intermedie generate e gli output di addestramento vengono ignorati da Git; copiare eventuali risultati che si desidera pubblicare in una release separata o in un archivio di artefatti.

Citazione

La citazione dell'articolo verrà aggiunta quando saranno disponibili le informazioni bibliografiche finali e il link all'articolo.

Licenza

Il codice in questa repository è rilasciato sotto la Licenza MIT. I dataset di terze parti, le immagini e il modello Qwen3-VL rimangono soggetti alle rispettive licenze e termini.

Scarica lo strumento
ManifestoRadice immaginiScopo
qwen3vl_refusal_direction_harmful.csvvlsafe_imagesEsempi lato dannoso/rifiuto
qwen3vl_refusal_direction_harmless.csvvlsbench_imgsEsempi lato innocuo/non-rifiuto
qwen3vl_kl_benign_vqa.csvmmvet_imagesEsempi VQA benigni per la valutazione KL/effetti collaterali