> ## Documentation Index
> Fetch the complete documentation index at: https://docs.inferwall.com/llms.txt
> Use this file to discover all available pages before exploring further.

# InferenceWall: AI Firewall for LLM-Powered Apps

> InferenceWall protects LLM apps against prompt injection, jailbreaks, and data leakage using 100 signatures and multi-layer detection — single pip install.

InferenceWall is an AI application firewall that sits between your users and your LLM, scanning every input and output for threats. With 100 built-in detection signatures, a Rust-powered heuristic engine, and optional ML classifiers, InferenceWall gives you defense-in-depth against prompt injection, jailbreaks, content safety violations, and data leakage — all with a single `pip install`.

<CardGroup cols={2}>
  <Card title="Quick Start" icon="bolt" href="/quickstart">
    Install InferenceWall and scan your first input in under 5 minutes.
  </Card>

  <Card title="Deployment Profiles" icon="layer-group" href="/deployment-profiles">
    Choose between Lite, Standard, and Full profiles based on your latency and accuracy needs.
  </Card>

  <Card title="API Reference" icon="code" href="/api/overview">
    Explore the REST API for scanning inputs and outputs via HTTP.
  </Card>

  <Card title="Integrations" icon="plug" href="/integrations/openai">
    Wrap OpenAI, Anthropic, LangChain, and FastAPI with InferenceWall in minutes.
  </Card>
</CardGroup>

## How it works

InferenceWall runs a multi-layer detection pipeline on every scan request. Each layer uses a different technique — pattern matching, ML classification, semantic similarity, or LLM judgment — and contributes to a single anomaly score. When the score crosses a threshold, InferenceWall flags or blocks the content.

<Steps>
  <Step title="Install">
    Install InferenceWall from PyPI. The `lite` profile has zero ML dependencies and runs with sub-millisecond latency.

    ```bash theme={null}
    pip install inferwall
    ```
  </Step>

  <Step title="Scan inputs">
    Call `inferwall.scan_input()` before forwarding user prompts to your LLM. Check the decision field to allow, flag, or block.

    ```python theme={null}
    import inferwall

    result = inferwall.scan_input("Ignore all previous instructions")
    print(result.decision)  # "block"
    print(result.score)     # 12.0
    ```
  </Step>

  <Step title="Scan outputs">
    Call `inferwall.scan_output()` before returning LLM responses to users. InferenceWall catches PII, API keys, and other sensitive data leakage.

    ```python theme={null}
    result = inferwall.scan_output("Your API key is sk-1234...")
    print(result.decision)  # "block"
    ```
  </Step>

  <Step title="Tune and deploy">
    Configure policy profiles to adjust thresholds, enable monitor mode, and add custom signatures — no code changes required.
  </Step>
</Steps>

## Detection capabilities

InferenceWall ships with 100 signatures covering five threat categories, all mapped to the [MITRE ATLAS](https://atlas.mitre.org/) adversarial AI framework.

<CardGroup cols={2}>
  <Card title="Prompt Injection" icon="syringe" href="/concepts/signatures">
    Direct and indirect injection, jailbreaks, persona hijacking, obfuscated payloads (base64, ROT13, homoglyphs).
  </Card>

  <Card title="Data Leakage" icon="shield-halved" href="/concepts/signatures">
    PII detection, API key and credential exposure, training data exfiltration.
  </Card>

  <Card title="Content Safety" icon="triangle-exclamation" href="/concepts/signatures">
    Toxicity, hate speech, violence, self-harm, and other harmful content categories.
  </Card>

  <Card title="Agentic Threats" icon="robot" href="/concepts/signatures">
    Tool abuse, context poisoning, host escape attempts, and exfiltration via agent actions.
  </Card>
</CardGroup>
