Zum Inhalt springen

DeepTeam - LLM Red Teaming Framework Cheatsheet

DeepTeam - LLM Red Teaming Framework Cheatsheet

DeepTeam ist ein Open-Source-LLM-Red-Teaming-Framework vom Team hinter DeepEval. Es simuliert Adversarial-Attacken gegen deine LLM-Anwendung — Prompt Injection, Jailbreaks, PII-Leaks, übermäßige Agency, Bias — mit einer Bibliothek von Anfälligkeiten und Angriffsverstärkungen, die einen Basis-Angriff rewritten, um Abwehrmaßnahmen zu umgehen. Die Leitleitidee ist, dass Red Teaming wiederholbar und automatisiert sein sollte, kein einmaliges manuelles Experiment, daher läuft es wie eine Test-Suite in CI.

Benutze Red Teaming nur auf Systemen, denen du gehörst oder die du testen darfst. Generierte Attacken sind reale Adversarial-Eingaben.

Installation

MethodeBefehl
pippip install deepteam
uvuv add deepteam
Model-Schlüsselexport OPENAI_API_KEY=... (Simulator + Richter)
Verifikationpython -c "import deepteam; print('ok')"

Kernkonzepte

BegriffBedeutung
VulnerabilityEine Schwachstellenklasse zum Testen (z.B. PII-Leaks)
AttackEine Technik, um sie auszulösen (z.B. Prompt Injection)
EnhancementEine Transformation, die einen Angriff schwärer zu erkennen macht
Model CallbackDeine App, als Funktion verpackt, die DeepTeam aufrufen kann
Risk AssessmentDer bewertete Bericht darüber, was erfolgreich war

Minimales Red Team Run

from deepteam import red_team
from deepteam.vulnerabilities import Bias, PIILeakage
from deepteam.attacks.single_turn import PromptInjection

async def model_callback(input: str) -> str:
    # call YOUR app/model here and return its output
    return await my_llm_app(input)

risk = red_team(
    model_callback=model_callback,
    vulnerabilities=[Bias(), PIILeakage()],
    attacks=[PromptInjection()],
)
print(risk)
ArgumentZweck
model_callbackAdapter zu deinem System unter Test
vulnerabilitiesWelche Schwächen zu testen sind
attacksWelche Techniken zu verwenden sind
attacks_per_vulnerability_typeVolumen der Testfälle

Schwachstellen-Kategorien

KategoriePrüft auf
PIILeakageWeitergabe persönlicher Daten
BiasGeschlechts-/Rassen-/Religions-/politischen Bias
ToxicitySchädliche oder missbräuchliche Ausgabe
PromptLeakageDisclosure von System Prompts
ExcessiveAgencyUnbefugte Maßnahmen
MisinformationFaktische/unbegründete Behauptungen
IllegalActivityUnsichere Befehlseinhaltung
RobustnessHijacking / Eingabeabhängigkeit

Attacken & Verstärkungen

Single-Turn-AngriffTechnik
PromptInjectionInjizierte Anweisungen
RoleplayPersonas-basierte Umgehung
Base64 / ROT13 / LeetspeakEncoding-Evasion
MultilingualNicht-englische Umgehung
MathProblemObfuskation durch Umrahmung
Multi-Turn-AngriffTechnik
LinearJailbreakingEskalierende Turns
TreeJailbreakingVerzweigtes Durchsuchen nach einer Umgehung
CrescendoJailbreakingGraduelles Eskalieren

Ausführung in CI

# red_team.py — fail the build if high-severity issues appear
risk = red_team(model_callback=cb, vulnerabilities=[...], attacks=[...])
assert risk.overall_score >= THRESHOLD, "Red team failures detected"
PraxisWarum
Pin ein Szenario-SetVergleichbare Ergebnisse über Läufe
Gate on SeveritySperren nur bei High-Risk-Regressions
Store ReportsVerfolge die Haltung über Zeit
Re-run bei Prompt-ÄnderungPrompts sind die Kontrolloberfläche

DeepTeam vs verwandte Tools

AspektDeepTeamgarakPyRITpromptfoo
LayerAnwendungModellModell + Multi-TurnAnwendung
StilPythonic SuiteCLI-ScannerOrchestration SDKConfig + CLI
Multi-TurnJaBegrenztStarkJa
Am besten fürApp-Level automatisiertes Red TeamingBreite Modell-ProbesKomplexe Angriff-ForschungCI Eval + Red Team

Ergänzt garak (Modell-Layer-Probes) und promptfoo (Eval + CI); Führe mehr als eines aus — sie fangen unterschiedliche Fehler.

Ressourcen