Skip to content

Export

Export AI red teaming findings as PDF reports, Parquet data files, and CLI-generated reports.

Dreadnode provides multiple ways to export AI red teaming results for stakeholders, data analysis, adversarial training, and compliance records.

Click Export PDF Report from the top-right of the Overview page to generate a downloadable PDF. The report includes:

  • Executive summary with risk level and key metrics
  • Severity distribution chart
  • Top findings ranked by score
  • Compliance framework mapping (OWASP, MITRE ATLAS, NIST, Google SAIF)
  • Model configuration details (target, attacker, judge models)
  • Recommendations based on findings

This is the primary deliverable for stakeholders who need a go/no-go decision on model deployment. Share it with CISOs, VP of Product, safety leads, and governance teams.

Click Download Parquet from the top-right of the findings table to export all findings as an Apache Parquet file.

The Parquet file contains every column from the findings table:

FieldDescription
severityFinding severity level (Critical, High, Medium, Low, Info)
scoreJailbreak score (0.0 to 1.0)
goalThe attack objective
attackAttack strategy that produced the finding
categoryHarm category
typeFinding type (jailbreak, partial, refusal)
transformsTransforms applied
trace_idLink back to the full trace in the platform
created_atWhen the finding was recorded
updated_atWhen the finding was last modified
  • Post-safety-training improvement - load successful attack prompts and target responses into your adversarial fine-tuning pipeline. Every jailbreak in the file is a training signal that directly addresses a real vulnerability the model has.
  • Risk mitigation evidence - provide concrete, auditable evidence of where the model fails. This is what safety teams need to prioritize mitigations and demonstrate due diligence to compliance stakeholders.
  • Custom analysis - load into Python with pandas or polars for analysis beyond what the dashboard provides:
import polars as pl
findings = pl.read_parquet("findings.parquet")
# Which transforms have highest success rate?
findings.filter(pl.col("type") == "jailbreak") \
.group_by("transforms") \
.agg(pl.count().alias("jailbreaks")) \
.sort("jailbreaks", descending=True)
# Which goals are most vulnerable?
findings.filter(pl.col("score") >= 0.9) \
.group_by("goal") \
.agg(pl.count().alias("critical_count")) \
.sort("critical_count", descending=True)
  • BI tools - import into Tableau, Looker, or Power BI for organization-wide reporting and trend tracking across model versions
  • Archival - preserve a complete record of every finding for regulatory compliance and audit trails

Generate reports programmatically from the command line:

Terminal window
# List reports for an assessment
dn airt reports <assessment-id>
# Get a specific report
dn airt report <assessment-id> <report-id>
Terminal window
# High-level summary across all assessments
dn airt project-summary <project>
# Findings with filtering
dn airt findings <project> --severity high --page 1 --page-size 20
dn airt findings <project> --category harmful_content --sort-by score --sort-dir desc
# Generate a full project report
dn airt generate-project-report <project> --format both

The --format flag accepts markdown, json, or both.