Skip to main content

Vulnerability Oriented Red-teaming for AI Knowledge

Project description

Vorak: Vulnerability Oriented Red-teaming for AI Knowledge

PyPI version License Python Version

Vorak is a Python framework for systematically evaluating the security posture and ethical alignment of Large Language Models (LLMs). It enables adversarial testing, automated red-teaming, and structured vulnerability assessments to help researchers, developers, and enterprises identify and mitigate risks in generative AI systems.


Table of Contents


Features

  • LLM-Powered Evaluation – Leverages evaluator LLMs to classify, score, and explain model behavior.
  • Multi-Provider Support – Compatible with Gemini, OpenRouter, Anthropic, OpenAI, and custom APIs.
  • Adversarial Prompt Libraries – Run curated or custom adversarial test suites at scale.
  • Batch & Automated Testing – Evaluate multiple models, prompts, or categories in a single run.
  • Risk & Alignment Reporting – Export structured outputs as PDF, JSON, or CSV for audits and dashboards.
  • Interactive Web UI – Streamlit-powered sandbox for interactive testing and visualization.

Installation

Install the latest release from PyPI:

pip install vorak

For development setup (cloning and local installation):

git clone https://github.com/ruchirk22/vorak.git
cd vorak
pip install -r requirements.txt
pip install -e .

Quick Start

For help regarding all commands:

vorak --help
vorak [COMMAND] --help #for specific command-related help

Run a single prompt evaluation:

vorak evaluate --model "openrouter/google/gemma-2-9b-it:free" --prompt-id "JBR_001"

Run a batch evaluation across categories:

vorak batch-evaluate --category "Jailbreaking_Role-Playing" \
    --model "gemini-1.5-flash-latest" \
    --output-json results.json

Configuration

Vorak uses environment variables for model provider authentication. Create a .env file in the project root:

GEMINI_API_KEY=your_gemini_api_key
OPENAI_API_KEY=your_openai_api_key
ANTHROPIC_API_KEY=your_anthropic_api_key

Usage

Command-Line Interface

View available commands:

vorak --help

Web Interface

Launch the interactive Streamlit UI:

streamlit run vorak/web_interface/Home.py

Project Structure

vorak/               # Core framework
  ├── cli.py         # CLI entrypoint
  ├── agents/        # Attack agents
  ├── core/          # Evaluators, connectors, analyzers
  ├── prompts/       # Prompt libraries
  └── web_interface/ # Streamlit-based UI

.tests/              # Unit tests
.github/workflows/   # CI/CD configs
pyproject.toml       # Build configuration
requirements.txt     # Dependencies
CONTRIBUTING.md      # Contribution guidelines
LICENSE              # License
README.md            # Documentation

Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines.


License

Vorak is licensed under the Apache 2.0 License.


Citation

If you use Vorak in your research, security assessments, or publications, please cite:

@software{vorak,
  author       = {Ruchir Kulkarni},
  title        = {Vorak: Vulnerability Oriented Red-teaming for AI Knowledge},
  year         = {2025},
  publisher    = {PyPI},
  url          = {https://pypi.org/project/vorak/}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vorak-1.0.2.tar.gz (49.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vorak-1.0.2-py3-none-any.whl (51.7 kB view details)

Uploaded Python 3

File details

Details for the file vorak-1.0.2.tar.gz.

File metadata

  • Download URL: vorak-1.0.2.tar.gz
  • Upload date:
  • Size: 49.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for vorak-1.0.2.tar.gz
Algorithm Hash digest
SHA256 7fc6db9550b85d4f3fb184f05b34937c5f15b68d8b7d019378075a7ac019f0e5
MD5 aa54f3a2e068bee6a9f1441b60010b49
BLAKE2b-256 739327d5a885167ff7887c9530745ad579d3353e1bd66e223b945774e1b78855

See more details on using hashes here.

File details

Details for the file vorak-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: vorak-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 51.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for vorak-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 494451287374fd36923a66c3cd114d667ae8a556f023bd7997d5defc1986ae85
MD5 22f98d8ff436400095e5fa7df22660ec
BLAKE2b-256 2bb8c6596c5bb4383543b6158ac2a2d1aee7881e202d852b40aa03641c2185ae

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page