Skip to content

NOVA: The Prompt Pattern Matching

Generative AI systems are rapidly being adopted and deployed across organizations. While they enhance productivity and efficiency, they also expand the attack surface.

How do you detect abusive usage of your system? How do you hunt for malicious prompts? Whether it is identifying jailbreaking attempts, preventing reputational damage, or spotting unexpected behaviors, tracking prompt TTPs can be very useful to track the usage of your AI systems.

That’s where NOVA comes in!

🚧 Disclaimer: NOVA is in its beta phase and undergoing early testing. Expect potential bugs, incomplete features, and ongoing improvements. If you identify a bug please report it here.

NOVA Logo

NOVA is an open-source prompt pattern matching system that combines keyword detection, semantic similarity, and LLM-based evaluation to analyze and detect prompt content.

A NOVA rule can be used with the following capabilities:

  • 🔍 Keyword Detection: Uses predefined keywords or regex to flag suspicious prompts.
  • 💬 Semantic Similarity: Detects variations of patterns with configurable thresholds.
  • ✨ LLM Matching: Uses LLM-based detection where you define a matching rule using natural language.

Built with a YARA-inspired syntax, a NOVA Rule is both readable and flexible. This is an initial attempt of creating a tool for prompt hunting.

Anatomy of a NOVA rule

A NOVA rule follows this structure:

rule RuleName
{
    meta:
        description = "Rule description"
        author = "Author name"

    keywords:
        $keyword1 = "exact text"
        $keyword2 = /regex pattern/i

    semantics:
        $semantic1 = "semantic pattern" (0.6)

    llm:
        $llm_check = "LLM evaluation prompt" (0.7)

    condition:
        keywords.$keyword1 or semantics.$semantic1 or llm.$llm_check
}

Getting Started

Staying in touch

Thomas Roccia