Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/cucu220123/safety-awareness
Maschinelles LernenPapers & ForschungLernen & BildungKI-Sicherheit
GitHubcucu220123/safety-awareness

safety-awareness

Forschungscode zur Extraktion und zum Training von Safety-Awareness-Richtungen in multimodalen LLMs, um das Verweigerungsverhalten zu verbessern und gleichzeitig die Abweichung bei harmlosen Aufgaben zu begrenzen.

Repository anzeigen
vor 6 TagenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Transfer Safety Awareness für Cross-Modal Safety Drift

Offizielle Implementierung von Transfer Safety Awareness für Cross-Modal Safety Drift in Multimodalen Large Language Models (EMNLP 2026 Findings).

Dieses Repository enthält die Qwen3-VL Safety-Awareness-Richtungs-Pipeline. Sie extrahiert eine verweigerungsbezogene Aktivierungsrichtung aus schädlichen und harmlosen multimodalen Beispielen, wählt die Richtung aus, die das Verweigerungsverhalten verbessert und gleichzeitig die Drift bei harmlosen Aufgaben begrenzt, und trainiert optional einen richtungsspezifischen Safety-Awareness-Vektor.

Der Code unterstützt derzeit Qwen/Qwen3-VL-8B-Instruct über Hugging Face Transformers.

Repository-Struktur

root@kitploit:~
.
├── artifacts/directions/       # Vorberechnete ausgewählte Richtung und Metadaten
├── data/csv/                   # CSV-Manifeste, die von der Pipeline verwendet werden
├── data/images/                # Lokale Bildverzeichnisse (nicht enthalten)
├── directions/                 # Richtungsextraktion und -auswahl
├── models/                     # Qwen3-VL-Modell- und Prozessor-Hilfsprogramme
├── training/                   # Safety-Awareness-Richtungstraining
├── utils/                      # Aktivierungs-Hook-Hilfsprogramme
├── config.py
├── run_pipeline.py             # Einstiegspunkt für Richtungserzeugung und -auswahl
└── requirements.txt

Installation

Python 3.10+ und eine CUDA-fähige PyTorch-Installation werden empfohlen.

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

Der erste Lauf lädt Qwen/Qwen3-VL-8B-Instruct von Hugging Face herunter. Stellen Sie sicher, dass die Maschine über ausreichend GPU-Speicher verfügt und dass Sie alle vom Modellanbieter geforderten Modellbedingungen akzeptiert haben.

Datenvorbereitung

Das Repository enthält die CSV-Manifeste, die in den Experimenten verwendet werden, verteilt jedoch nicht die Quell-Bilddatensätze. Besorgen Sie die Bilder von ihren ursprünglichen Datensatzanbietern und platzieren Sie sie unter diesen projektrelativen Verzeichnissen:

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

Die Zuordnung ist:

Bildverzeichnisse und CSV-Pfade können ohne Codeänderung überschrieben werden:

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

Bitte beachten Sie beim Herunterladen oder Verwenden der Bilder und Manifeste die Lizenzen und Bedingungen jedes Quelldatensatzes.

Eine Richtung erzeugen und auswählen

Um die Kandidaten-Richtungserzeugung und validierungsbasierte Auswahl auszuführen:

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

Der Befehl verwendet standardmäßig 128 Trainings- und 32 Validierungsbeispiele pro Split. Er schreibt Zwischenergebnisse nach artifacts/direction_runs/<model-name>/ und speichert die ausgewählte Richtung unter:

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

Verwenden Sie --model_path, um auf ein lokales Modellverzeichnis oder eine andere kompatible Hugging Face-Kennung zu verweisen. Das Flag --skip_filter deaktiviert die Filterstufe für den Verweigerungswert.

Das Repository enthält bereits ein vorberechnetes Richtungsartefakt für den Standard-Qwen3-VL-Checkpoint, sodass diese Stufe übersprungen werden kann, wenn dieses Artefakt für Ihre Einrichtung geeignet ist.

Die Safety-Awareness-Richtung trainieren

Das Training aktualisiert die ausgewählte Richtung mit den in der Papiercode verwendeten Zielen für harmlose Aufgaben und Verweigerung. Ein Beispiel mit vier GPUs ist:

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

Die Trainingsausgaben werden standardmäßig nach outputs/qwen3vl_safety_awareness_train/ geschrieben. Nützliche Optionen umfassen --model_path, --direction_pt, --direction_meta, --artifact_dir, --epochs, --batch_size und --lr; führen Sie python -m training.train_safety_awareness_direction --help aus, um die vollständige Liste zu erhalten.

Hinweise zur Reproduzierbarkeit

  • Setzen Sie CUDA_VISIBLE_DEVICES und verwenden Sie dieselbe Modellrevision, Eingabemanifeste und Bilddateien für vergleichbare Ergebnisse.
  • Der Datenlader weist Zeilen mithilfe der CSV-Spalte split (falls vorhanden) Trainings-/Validierungs-/Test-Splits zu; andernfalls verwendet er deterministisch question_id % 10.
  • Modell-Checkpoints und heruntergeladene Bilddatensätze sind absichtlich von diesem Repository ausgeschlossen.
  • Generierte Zwischenläufe und Trainingsausgaben werden von Git ignoriert; kopieren Sie alle Ergebnisse, die Sie veröffentlichen möchten, in einen separaten Release oder Artefakt-Store.

Zitierung

Die Papierzitierung wird hinzugefügt, sobald die endgültigen bibliografischen Informationen und der Papierlink verfügbar sind.

Lizenz

Der Code in diesem Repository wird unter der MIT-Lizenz veröffentlicht. Datensätze, Bilder und das Qwen3-VL-Modell von Drittanbietern unterliegen weiterhin ihren jeweiligen Lizenzen und Bedingungen.

Tool herunterladen
ManifestBildverzeichnisZweck
qwen3vl_refusal_direction_harmful.csvvlsafe_imagesSchädliche/Verweigerungsseiten-Beispiele
qwen3vl_refusal_direction_harmless.csvvlsbench_imgsHarmlose/Nicht-Verweigerungsseiten-Beispiele
qwen3vl_kl_benign_vqa.csvmmvet_imagesHarmlose VQA-Beispiele für KL/Nebenwirkungsbewertung