Enhance project configuration and structure: Added build-system requirements in pyproject.toml, updated README for installation instructions, and refactored attack classes to utilize a new create_test_case method. Introduced a plugins.yaml for component registration and removed the legacy registry initialization file.

This commit is contained in:
Liao, Jie
2025-12-18 23:36:12 +08:00
parent becb9c8624
commit 84a4d1708e
49 changed files with 1474 additions and 727 deletions
+7 -11
View File
@@ -13,7 +13,7 @@ import matplotlib.pyplot as plt
import torch
from transformers import AutoProcessor
from transformers import Qwen2_5_VLForConditionalGeneration
from core.unified_registry import BaseAttack
from core.base_classes import BaseAttack
from core.data_formats import TestCase
from dataclasses import dataclass
@@ -435,14 +435,10 @@ class VisCRAAttack(BaseAttack):
# Modify query
modified_query = self._modify_query(query, self.attack_type)
return TestCase(
test_case_id=case_id,
image_path=attack_image,
prompt=modified_query,
metadata={
"attack_method": "viscra",
"original_prompt": query,
"jailbreak_prompt": modified_query,
"jailbreak_image_path": attack_image,
},
return self.create_test_case(
case_id=case_id,
jailbreak_prompt=modified_query,
jailbreak_image_path=str(attack_image),
original_prompt=query,
original_image_path=str(image_path),
)