Signature-based AI application firewall — protects LLM apps against prompt injection, jailbreaks, and data leakage
Project description
InferenceWall
Signature-based AI application firewall.
InferenceWall protects LLM-powered applications against prompt injection, jailbreaks, content safety violations, and data leakage using a curated catalog of detection signatures with anomaly scoring.
Features
- 70 detection signatures across 5 categories (injection, content safety, data leakage, system prompt, agentic)
- Rust-powered heuristic engine — <0.3ms p99 for pattern matching
- ML engines — ONNX classifier (DeBERTa/DistilBERT) + FAISS semantic similarity
- Anomaly scoring — multiple weak signals combine into strong signals (like OWASP CRS)
- Policy profiles — operators configure detection without code
- Three deployment modes: SDK, API server, reverse proxy
- API key authentication with scan/admin role separation
Installation
From PyPI (coming soon)
# Lite profile — heuristic engine only, zero ML deps
pip install inferwall
# Standard profile — adds ONNX classifier + FAISS semantic engine
pip install inferwall[standard]
# Full profile — adds LLM-judge for borderline cases
pip install inferwall[full]
From GitHub (now)
# Install from source (requires Rust toolchain)
pip install git+https://github.com/inferwall/inferwall.git
# Or clone and install
git clone https://github.com/inferwall/inferwall.git
cd inferwall
pip install -e ".[dev]"
Pre-built wheels
Download pre-built wheels from GitHub Releases or from CI artifacts:
# Download the wheel for your platform, then:
pip install inferwall_core-*.whl inferwall-*.whl
Quick Start
import inferwall
# Scan user input
result = inferwall.scan_input("user prompt here")
print(result.decision) # "allow", "flag", or "block"
print(result.score) # anomaly score
print(result.matches) # matched signatures
API Server
inferwall serve
# Scan via HTTP
curl -X POST http://localhost:8000/v1/scan/input \
-H "Content-Type: application/json" \
-d '{"text": "What is the weather today?"}'
ML Models (Standard/Full profiles)
# Download models for the Standard profile (~730MB)
inferwall models download --profile standard
# Check what's downloaded
inferwall models status
CLI
# Test a single input
inferwall test --input "Ignore all previous instructions"
# Generate API keys
inferwall admin setup
Deployment Profiles
| Profile | Engines | Latency | Install |
|---|---|---|---|
| Lite | Heuristic (Rust) | <0.3ms p99 | pip install inferwall |
| Standard | + Classifier + Semantic | <80ms p99 | pip install inferwall[standard] |
| Full | + LLM-Judge | <2s p99 | pip install inferwall[full] |
Documentation
License
- Engine code (Rust, Python, CLI, API): Apache-2.0
- Community signatures (catalog/): CC BY-SA 4.0 — modifications must be shared back
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file inferwall-0.1.3-py3-none-any.whl.
File metadata
- Download URL: inferwall-0.1.3-py3-none-any.whl
- Upload date:
- Size: 80.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1532d7bd552df62bd0ff48e39fddfbf471b466d54d6c094d87228314bd584b72
|
|
| MD5 |
e734b1a7a95c2853cad1b79db9dbf3d2
|
|
| BLAKE2b-256 |
47824783d07f5a1d2a9a1a7d3f77b6c726c4adfc164080d53b80e87f02a10000
|
Provenance
The following attestation bundles were made for inferwall-0.1.3-py3-none-any.whl:
Publisher:
release.yml on inferwall/inferwall
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
inferwall-0.1.3-py3-none-any.whl -
Subject digest:
1532d7bd552df62bd0ff48e39fddfbf471b466d54d6c094d87228314bd584b72 - Sigstore transparency entry: 1192143011
- Sigstore integration time:
-
Permalink:
inferwall/inferwall@ce3a6577eaa17be7615e171b0277583c1c12455e -
Branch / Tag:
refs/tags/v0.1.3 - Owner: https://github.com/inferwall
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ce3a6577eaa17be7615e171b0277583c1c12455e -
Trigger Event:
push
-
Statement type: