SELECT
PROJECTS

This page is the proof-of-work layer of the portfolio. The domain pages explain how I think and operate across Trust & Safety, moderation, community, and LLM work. The projects below show what I have actually built, why I built it, how the systems are structured, and where they are useful.

FormatLong-form case studies
FocusAI safety tools and research systems
DepthOverview, stack, capabilities, philosophy, use cases
ModEval RedLib
Project 01

MODEVAL

An AI moderation evaluation system built to compare multiple classifiers side by side, normalize their outputs, and surface where they agree, conflict, or fail policy alignment.

AI Moderation Evaluation System
Multi-Model Moderation Analysis
Live production tool
ModEval live interface preview Live interface preview
Overview

ModEval runs text through eight independent AI moderation models simultaneously: enterprise APIs and open-source safety classifiers. The system normalizes every model output into a unified schema, applies AI-powered policy alignment scoring, and highlights disagreements that would otherwise stay hidden inside isolated vendor dashboards.

The core insight behind the project is that disagreements between moderation models are often the most analytically useful signal. When one model says remove, another says review, and a third says allow, that divergence tells you something important about thresholds, training data, policy interpretation, and edge-case behavior.

Key Capabilities
Execution
Parallel Model Runs

Runs all models side by side with graceful degradation so one timeout or failing provider does not collapse the whole evaluation pass.

Decision Layer
Fixed Threshold System

Normalizes scores into a shared allow, review, remove framework, making cross-model comparison usable instead of noisy.

Alignment
Policy Scoring

Claude Haiku evaluates whether each model decision matches the selected platform policy such as Reddit, Discord, Facebook, Instagram, or a custom policy.

Analysis
Disagreement Detection

Surfaces both action conflicts and category conflicts so the interesting edge cases become visible immediately.

Technical Stack
Language
Python
Framework
Flask
Server
Gunicorn
Models
Hive Moderation, Azure Content Safety, Google NLP, OpenAI Moderation, HuggingFace safety models, Claude Haiku 4.5
Frontend
Vanilla JavaScript, HTML, CSS
Hosting
Hetzner VPS, Ubuntu 24, Nginx, systemd, Doppler, Cloudflare, Let's Encrypt
Deployment
GitHub Actions SSH deploy on push to main
Use Cases
Policy teams comparing which moderation model best matches a platform's actual rules.
AI safety researchers studying disagreement patterns and ambiguous edge cases.
Product teams testing policy changes before deploying them into production workflows.
Training-data builders identifying where current safety classifiers break down.
Design Philosophy

ModEval was built from the perspective of someone who has spent years reviewing harmful content manually. The point is not to crown a single model as best. The point is to make disagreement visible, interpretable, and useful. That is what turns a stack of model outputs into something relevant for real Trust & Safety work and AI safety analysis.

From a production standpoint, the project also treats operational resilience as part of the product. Cloudflare proxying, Nginx rate limiting, timeout enforcement, structured logging, and sanitized errors all exist because a useful internal tool still needs to behave like a real system, not a local demo.

Project 02

REDLIB

A corpus-grounded jailbreak research system built for AI safety practitioners who need retrieval, evidence inspection, and synthesis tied to real prompt corpora rather than generic model memory.

Corpus-Grounded Jailbreak Research System
Grounded RAG for Sensitive Research
Phase 1 in development
RedLib live interface preview Live interface preview
Overview

RedLib turns messy public jailbreak datasets into a reproducible, human-reviewed corpus and then supports grounded retrieval, source inspection, and concise synthesis over that corpus. Every answer is tied to retrieved evidence. There is no direct conceptual route where the LLM can skip retrieval and answer from general background knowledge.

That grounding decision is what makes the system useful as a research tool. The aim is not to create a general assistant for jailbreak topics. It is to help practitioners inspect real corpus evidence, study patterns, and synthesize findings without losing traceability.

Key Capabilities
Corpus Pipeline
Staged Ingestion

A staged pipeline handles fetch, convert, audit, normalize, taxonomy discovery, classification, and ingestion with one responsibility per stage.

Retrieval
Hybrid Search

Combines dense and sparse retrieval inside Qdrant Cloud, then uses reciprocal rank fusion and reranking before synthesis.

Review
Human in the Loop

Human review sits between taxonomy discovery and corpus-wide classification so the final structure is grounded before scale is introduced.

Responsible Use
Guarded Access Pattern

A responsible-use gate, constrained synthesis, and deliberate prompt inspection flow reduce casual misuse while preserving research value.

Technical Stack
Language
Python
Framework
FastAPI
RAG Framework
LlamaIndex
Vector Database
Qdrant Cloud with hybrid dense and sparse retrieval
Embeddings
OpenAI text-embedding-3-small
Reranking
Cohere Rerank API
Synthesis Model
Claude Haiku 4.5
Hosting
Hetzner VPS, Ubuntu, Nginx, Gunicorn, systemd, Doppler
Use Cases
AI safety practitioners inspecting jailbreak technique patterns across datasets.
Red teamers searching grounded corpus examples instead of relying on memory.
Researchers studying taxonomy quality, retrieval quality, and corpus composition.
Applied ML and backend teams studying safe retrieval design over sensitive corpora.
Design Philosophy

RedLib is built on the idea that jailbreak data is a corpus-engineering problem first and a retrieval problem second. Raw scraped prompts are noisy, inconsistent, and hard to reason about. The retrieval layer only becomes trustworthy when the underlying corpus is reproducible, inspectable, and debuggable.

The no-direct-LLM-route decision is equally intentional. If the project is meant to support evidence-based research, then every synthesis answer should remain tied to retrieved corpus material. That keeps the system grounded, auditable, and meaningfully different from a general chatbot.