File size: 1,509 Bytes
c624cb8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
"""

Attacker Agent



Multi-agent adversarial LLM evaluation framework - Attacker module.



This module provides:

- AttackRequest and AttackResponse schemas

- Base attack strategy classes

- Attack engine with chaining, temperature variation, and diversity scoring

- Strategy registry for extensible attacks

- Multiple attack strategies (jailbreak, injection, bias_trigger, etc.)

"""

from agents.attacker.base import (
    BaseAttackStrategy,
    BiasTriggerStrategy,
    ChainingStrategy,
    ContextPoisoningStrategy,
    JailbreakStrategy,
    PromptInjectionStrategy,
    RoleConfusionStrategy,
)
from agents.attacker.engine import AttackEngine, get_attack_engine
from agents.attacker.registry import (
    ATTACK_REGISTRY,
    get_attack_strategy,
    initialize_registry,
    list_attack_strategies,
    register_attack_strategy,
)
from agents.attacker.schemas import AttackLog, AttackRequest, AttackResponse

__version__ = "0.1.0"

__all__ = [
    # Schemas
    "AttackRequest",
    "AttackResponse",
    "AttackLog",
    # Base strategies
    "BaseAttackStrategy",
    "PromptInjectionStrategy",
    "JailbreakStrategy",
    "BiasTriggerStrategy",
    "ContextPoisoningStrategy",
    "RoleConfusionStrategy",
    "ChainingStrategy",
    # Engine
    "AttackEngine",
    "get_attack_engine",
    # Registry
    "ATTACK_REGISTRY",
    "register_attack_strategy",
    "get_attack_strategy",
    "list_attack_strategies",
    "initialize_registry",
]