← retour aux outils back to tools

# Plexiglass

Outil de red-teaming en ligne de commande pour les LLM, qui exécute un catalogue d'attaques contre un modèle cible et évalue sa susceptibilité au jailbreak, au biais et à la toxicité. Command-line red-teaming tool for LLMs that runs a catalog of attacks against a target model and benchmarks it for jailbreak susceptibility, bias, and toxicity.

↗ https://github.com/kortex-labs/plexiglass

## Overview

Plexiglass is a CLI-driven red-teaming tool aimed at LLMs specifically. Rather than crafting individual jailbreak prompts by hand, you point it at a target model and it runs through a catalog of known attack techniques, scoring the model’s responses for jailbreak susceptibility, toxicity, and bias. It’s useful early in an AI red-team engagement as a quick automated pass to triage which categories of attack are worth pursuing manually.

## Installation

    pip install plexiglass

## Configuring a Target Model

    # Plexiglass targets any model exposing a callable interface
    from plexiglass.llm import LLM

    target = LLM(
        provider="openai",          # or "huggingface", "anthropic", custom endpoint wrapper
        model="<model_name>",
        api_key="<api_key>",
    )

## Running an Attack Benchmark

Launch the interactive CLI session

    plexiglass

    # Inside the session — load a target and run the default jailbreak suite
    plexiglass> load_model --provider openai --model <model_name>
    plexiglass> run_attack --category jailbreak
    plexiglass> run_attack --category toxicity
    plexiglass> run_attack --category bias

Export scored results

    plexiglass> export_report --output report.json

## Python API Usage

    from plexiglass.attacks import JailbreakAttack

    # Run a specific attack module against the wrapped target
    attack = JailbreakAttack(target=target)
    results = attack.run()

    for r in results:
        print(r.prompt, "->", r.success, r.score)

## Tips

- Treat Plexiglass’s scores as a triage signal, not ground truth — always manually verify any flagged “successful” jailbreak against the actual target, since automated toxicity/bias scoring produces false positives.
- Good first pass before deeper manual prompt-injection work with something like the Arcanum PI Taxonomy.

Help / Man page

    plexiglass

    COMMANDS:
      load_model --provider <name> --model <model> [--api-key KEY]
      run_attack --category <jailbreak|toxicity|bias>
      list_attacks                      List available attack modules
      export_report --output <file>     Export scored results as JSON
      help                              Show command help

    ATTACK CATEGORIES:
      jailbreak    Known jailbreak/prompt-injection templates
      toxicity     Toxic-output elicitation prompts
      bias         Demographic/social bias probing prompts

## Vue d’ensemble

Plexiglass est un outil de red-teaming piloté en CLI, spécifiquement destiné aux LLM. Plutôt que de rédiger des prompts de jailbreak un par un, vous le pointez vers un modèle cible et il parcourt un catalogue de techniques d’attaque connues, en notant les réponses du modèle selon leur susceptibilité au jailbreak, à la toxicité et au biais. Utile en début de mission de red-team IA pour effectuer une première passe automatisée qui permet de trier les catégories d’attaque méritant d’être approfondies manuellement.

## Installation

    pip install plexiglass

## Configuration d’un modèle cible

    # Plexiglass cible n'importe quel modèle exposant une interface appelable
    from plexiglass.llm import LLM

    target = LLM(
        provider="openai",          # ou "huggingface", "anthropic", wrapper d'endpoint personnalisé
        model="<model_name>",
        api_key="<api_key>",
    )

## Lancer un benchmark d’attaque

Lancer la session CLI interactive

    plexiglass

    # Dans la session : charger une cible et lancer la suite de jailbreak par défaut
    plexiglass> load_model --provider openai --model <model_name>
    plexiglass> run_attack --category jailbreak
    plexiglass> run_attack --category toxicity
    plexiglass> run_attack --category bias

Exporter les résultats notés

    plexiglass> export_report --output report.json

## Utilisation via l’API Python

    from plexiglass.attacks import JailbreakAttack

    # Exécuter un module d'attaque spécifique contre la cible encapsulée
    attack = JailbreakAttack(target=target)
    results = attack.run()

    for r in results:
        print(r.prompt, "->", r.success, r.score)

## Conseils

- Considérez les scores de Plexiglass comme un signal de tri, pas comme une vérité absolue : vérifiez toujours manuellement tout jailbreak signalé comme « réussi » contre la cible réelle, car la notation automatisée de toxicité/biais génère des faux positifs.
- Bonne première passe avant un travail manuel plus poussé d’injection de prompt avec un outil comme l’Arcanum PI Taxonomy.

Aide / Page de manuel

    plexiglass

    COMMANDS:
      load_model --provider <name> --model <model> [--api-key KEY]
      run_attack --category <jailbreak|toxicity|bias>
      list_attacks                      List available attack modules
      export_report --output <file>     Export scored results as JSON
      help                              Show command help

    ATTACK CATEGORIES:
      jailbreak    Known jailbreak/prompt-injection templates
      toxicity     Toxic-output elicitation prompts
      bias         Demographic/social bias probing prompts