Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
TrustworthyRAG — Ein Evaluierungsagent zur Erkennung von Fehlinformationen und Wissensvergiftung in Retrieval-Augmented-Generation-Systemen. | Kitploit
Tools/GitHubGitHub/gpt-laboratory/trustworthyrag
Code-AnalyseMaschinelles LernenPapers & ForschungKI-SicherheitAnomalieerkennung
GitHubgpt-laboratory/trustworthyrag

TrustworthyRAG

Ein Evaluierungsagent zur Erkennung von Fehlinformationen und Wissensvergiftung in Retrieval-Augmented-Generation-Systemen.

Repository anzeigen
70vor 3 MonatenNoch 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

Trustworthy RAG

Ein Evaluierungsagent zur Erkennung von Fehlinformationen und Wissensvergiftung in Retrieval-Augmented-Generation-Systemen.

Übersicht

Dieses Projekt implementiert ein Trustworthy RAG Framework mit einem integrierten Evaluierungsagenten, der die Zuverlässigkeit von RAG-Antworten anhand von drei komplementären Analysekomponenten bewertet:

  • NLI-Verifizierer – Faktische Konsistenzprüfung mittels Natural Language Inference (BART-MNLI)
  • Giftdetektor – Mehrsignal-Erkennung adversarischer Inhalte (linguistisch, strukturell, semantisch, Intra-/Cross-Dokument-NLI)
  • Trust-Index-Rechner – Gewichteter Gesamtscore, der Faktizität, Konsistenz und Gift-Sicherheit kombiniert

Das System erzeugt für jede RAG-Antwort einen Trust Score (0-1) und ermöglicht so die automatisierte Erkennung von Wissensvergiftungsangriffen und halluzinierten Inhalten.

Dieses Repository ist das Forschungsartefakt zum ICSEA-2026-Konferenzpapier gleichen Titels. Siehe [Conference_ICSEA2026/](https://github.com/gpt-laboratory/trustworthyrag/blob/main/Conference_ICSEA2026) für die LaTeX-Quellen sowie den Abschnitt Paper weiter unten.

Architektur

User Query
    |
    v
+-------------------+
|     RETRIEVER     |   Embedding (MiniLM-L6-v2 or Snowflake Arctic Embed2) + FAISS
+--------+----------+
         |
         v
+-------------------+
|     GENERATOR     |   Llama 3.3 70B / Qwen 3.5 35B / Mistral 7B Instruct via FARMI API
+--------+----------+
         |
         v
+--------------------------------------------+
|           EVALUATION AGENT                 |
|                                            |
|  NLI Verifier    Poison Detector           |
|  (factuality)    (5 detection methods)     |
|       |                |                   |
|       v                v                   |
|     Trust Index Calculator                 |
|     T = 0.4*F + 0.35*C + 0.25*(1-P)       |
+--------------------------------------------+
         |
         v
   Answer + Trust Score + Evaluation Report

Projektstruktur

src/
  retriever/              # Dokumentabruf (Embeddings, FAISS, Chunking)
  generator/              # LLM-Antwortgenerierung (FARMI-Client, Prompts)
  evaluation_agent/       # Kernbewertung (NLI, Gift-Erkennung, Trust Index)
  experiments/            # Experimentierframework (vergiftete Datensätze, Runner)
  pipeline/               # End-to-End-RAG-Pipeline-Orchestrierung

tests/                    # Unit-Tests (78 Tests, pytest)
configs/config.yaml       # Alle Konfigurationsparameter
figures/                  # Automatisch generierte Diagramme (7 Abbildungen, 300 DPI)
run_experiment.py         # Experiment-CLI (Haupteinstiegspunkt)
generate_charts.py        # Visualisierungsgenerator
requirements.txt          # Python-Abhängigkeiten

Einrichtung

# Virtuelle Umgebung erstellen und aktivieren
python -m venv venv
.\venv\Scripts\Activate.ps1    # Windows PowerShell
# source venv/bin/activate     # Linux/Mac

# Abhängigkeiten installieren
pip install -r requirements.txt

# FARMI-API-Zugriff konfigurieren (für LLM-Generierung erforderlich)
# Vorlage kopieren und eigene Zugangsdaten eintragen:
#   cp .env.example .env       # dann .env bearbeiten und FARMI_API_KEY setzen
# Die .env-Datei ist .gitignored – niemals committen oder Schlüssel im Quellcode hartkodieren.

Verwendung

Vollständige Experiment-Suite ausführen

python run_experiment.py --all

Dies führt alle Experimente aus und generiert automatisch Diagramme:

  • TruthfulQA-Hauptexperiment (100 Stichproben, gemischte Vergiftung)
  • Experimente pro Strategie (je 100 Stichproben: Injektion, Widerspruch, Entitätentausch, subtil)
  • FEVER-Datensatzexperiment (100 Stichproben)
  • Ablationsstudie (5 Gewichtskonfigurationen, je 60 Stichproben)

Weitere Experimentoptionen

python run_experiment.py --quick          # Schnelltest (10 Stichproben)
python run_experiment.py --samples 30     # Benutzerdefinierte Stichprobenanzahl
python run_experiment.py --per-strategy   # Nur Aufschlüsselung nach Strategie
python run_experiment.py --fever          # FEVER-Datensatz einbeziehen
python run_experiment.py --ablation       # Nur Ablationsstudie
python run_experiment.py --grid           # 2x2-faktorielles Raster (alle LLM-x-Embedding-Kombinationen)
python run_experiment.py --grid --samples 50  # Vollständiger Rasterlauf (100 Stichproben pro Konfiguration)

Über die interaktive Eingabeaufforderung können Sie Folgendes auswählen:

  • LLM: Llama 3.3 70B (primär), Qwen 3.5 35B oder Mistral 7B Instruct (Vergleich)
  • Embedding: all-MiniLM-L6-v2 (lokal) oder snowflake-arctic-embed2 (API)
  • K: Abruftiefe – K=3 (schneller) oder K=5 (Standard, Voreinstellung)

Sie können den Generator auch nicht-interaktiv über die Umgebungsvariable LLM_MODEL festlegen (übereinstimmend mit configs/config.yaml und MODEL_DESCRIPTIONS in run_experiment.py):

$env:LLM_MODEL = "mistral-7b-instruct"   # oder "qwen3.5:35b", "llama3.3:70b"
python run_experiment.py --all

Use Case für sicheres Codieren im SDLC

Reproduzieren Sie das Experiment des Assistenten für sichere Codierung (40 OWASP/CWE-Regeln) aus dem Projektstammverzeichnis. Es verwendet den vorhandenen ExperimentRunner + PoisonedDatasetGenerator erneut und schreibt Ergebnisse nach data/experiments/seccode_*.json:

$env:LLM_MODEL = "llama3.3:70b"; $env:HF_HUB_OFFLINE = "1"; $env:TRANSFORMERS_OFFLINE = "1"
python Conference_ICSEA2026/run_seccode_usecase.py
# Setzen Sie zuerst $env:SECCODE_N = "4" für einen schnellen Smoke-Test über einige Regeln.

Nur Diagramme neu generieren

python generate_charts.py

Tests ausführen

pytest                    # Alle Tests (inklusive langsamer Modell-Lade-Tests)
pytest -m "not slow"      # Nur schnelle Tests (~0.4s)
pytest --cov=src          # Mit Coverage-Bericht

Kernergebnisse

Primärergebnisse (Llama 3.3 70B + all-MiniLM-L6-v2, TruthfulQA, K=5, 100 Stichproben)

DatensatzGenauigkeitPräzisionRecallF1-Scorevs. Baseline
TruthfulQA (gemischt)91%100%40%57.1%+7%
FEVER (vollständiger Lauf)73%20%26.7%22.9%−12%

Naive Baseline, die immer vertraut: 85% (TruthfulQA), 85% (FEVER). FEVER schneidet schlechter ab als die Baseline – der Trust Index erfordert eine domänenspezifische Kalibrierung für kurze faktische Behauptungen.

Mit 95-%-Konfidenzintervallen (Wilson für Anteile, Perzentil-Bootstrap B=20,000 für F1) lautet das primäre TruthfulQA-Mischergebnis: Genauigkeit 91 % (CI 83.8–95.2), Recall 40 % (CI 19.8–64.3), F1 57.1 % (CI 25.0–80.0), Δ=0.225. Die Intervalle sind breit, da jeder Lauf nur 15 vergiftete Stichproben enthält; wir berichten sie, um die Präzision nicht zu überschätzen.

Erkennung pro Strategie (TruthfulQA, je 100 Stichproben)

StrategieGenauigkeitPräzisionRecallF1Trennung
Injektion99%93.8%100%96.8%0.498
Widerspruch92%88.9%53.3%66.7%0.311
Subtil88%100%20.0%33.3%0.149
Entitätentausch85%—0%0%0.053

2×2-Faktorielles Raster (K=3, TruthfulQA, 100 Stichproben)

Tool herunterladen