← Solutions
◆ Solution We Built

Lumi: our guarded AI assistant, live on this very page.

The chat bubble in the corner of this site isn't a demo — it's a production Lambda answering real visitor questions, with every message passing through a seven-step guard pipeline before it ever reaches OpenAI.

The Problem

Bolting an AI assistant onto OpenAI is easy. Making it safe to leave running is not.

An unguarded AI assistant can be talked into ignoring its instructions, tricked into leaking whatever's in its prompt or logs, or run up an unbounded API bill from scraping and abuse. Lumi is our own answer to that — the same guardrail approach we sell as the RiskLumen Core Engine, running live on our own site, on our own visitor traffic.

  • Every message passes rate limiting, prompt-injection detection, secrets detection, and PII redaction before it reaches OpenAI
  • The model's reply is scanned again on the way out, so a leak can't slip out through the answer either
  • Confined to a fixed system prompt of real company facts — it can't browse the web or take actions
  • Built and run on a near-$0 AWS budget: no API Gateway, on-demand DynamoDB, free-tier Parameter Store
Lumi — Guard Pipeline
1. Rate Limiter — dual-key + duplicate-prompt
2. Input Canonicalizer — unicode / base64 unmasking
3. Prompt-Injection Guard
4. Secrets Guard — regex + entropy
5. PII Redaction
6. Cost / DoS Budget
  • Blocked "ignore previous instructions and..." — refused before reaching OpenAI
  • 200 Clean question answered from the site's real FAQ knowledge
How It's Built

Seven checks, in order, before a message ever costs us a token

Dual-Key Rate Limiting

A DynamoDB sliding window keyed by client and source IP, plus a stricter check for exact-duplicate prompts — the scraping/model-extraction pattern in the OWASP LLM Top 10.

Input Canonicalization

Unicode normalization, invisible-character stripping, and base64 decoding on a scanning copy of the text — so a hidden phrase or secret can't slip past a plain regex.

Prompt-Injection & Secrets Guards

Regex detection for manipulation phrases and known credential shapes, plus Shannon-entropy scoring to catch secrets with no recognizable prefix at all.

Two-Way PII Redaction

Emails, phone numbers, card numbers, and government ID numbers are redacted inbound — and the model's reply is scanned again on the way out.

Cost / DoS Budget

A dependency-free token estimate over the full conversation rejects grossly oversized requests before they reach the billed OpenAI call.

PII-Free Audit Logging

Every check's decision is written as a structured log line, with identifiers as one-way hashes — never raw IPs, keys, or secrets.

Try It Yourself

You don't need a screenshot — it's right there

01

Open the Chat Bubble

Click the 💬 icon in the bottom corner of this page — that's Lumi, running the exact pipeline described above.

02

Ask It Something

Ask about RiskLumen's solutions, pricing stance, or how we work — answers are confined to a real system prompt of company facts.

03

Try to Break It, If You Like

Prompt-injection and secrets-leak attempts are refused before they ever reach the model — that's the same guard logic behind the RiskLumen Core Engine.

Want a guarded AI assistant like this on your own site?

Lumi is the same Core Engine guard logic we sell, running on our own traffic every day. Tell us where you'd want it.