Lumen

AI chatbotsthat liveon yourwebsites

Self-hosted AI assistants embedded anywhere. Trained on your docs, your site, your knowledge — running on infrastructure you control. No cloud lock-in, no per-token surprise bills, no data leaving your hardware.

100% on your hardware
Local Ollama, 19 models
Embed in 60 seconds
bot.configsaved
name"Acme Support"
model"qwen3:14b"
docs12 indexed
chunks847 vectors
Acme Support
Online · qwen3:14b
How do I reset my password?
Go to Settings → Account → Security, then click Reset password. We'll email a one-time link.
Where's billing?

Self-hosted by teams who don't trust the cloud

Acme
Northwind
Globex
Initech
Hooli
Massive
Vandelay
Stark
Acme
Northwind
Globex
Initech
Hooli
Massive
Vandelay
Stark
Acme
Northwind
Globex
Initech
Hooli
Massive
Vandelay
Stark

The whole stack — yours

Everything that makes a great chatbot. Nothing that calls home.

Runs on your hardware. Period.

One Docker compose, one systemd unit. Postgres + Redis + Ollama, all local. No Neon, no Pinecone, no Clerk, no OpenAI dependency. Your customer's conversations never leave your network.

pgvectorOllamaLuciaRedisCaddysystemd
$0
cloud bills
142ms
avg latency
rate limits

Real RAG

pgvector + nomic-embed. Top-k retrieval with HNSW. Not prompt-stuffing.

Crawl any site

Playwright BFS. Vision OCR for product pages. Sync on a schedule.

Embed anywhere

Shadow DOM widget. One script tag. Zero dependencies. Theme-aware.

Brand-perfect

Match your colors, logo, position, voice. Light & dark themes.

Private by default

Domain allowlist. Per-IP rate limits. Encrypted BYOK keys.

Streaming SSE

Token-by-token responses. Multi-turn sessions. Conversation history.

19 local models

Qwen 3, GPT-OSS, DeepSeek R1, Phi-4. Or BYOK Anthropic / OpenAI.

Three steps. No bullshit.

From zero to embedded in five minutes.

01

Create a bot

Pick a name, system prompt, and a model. Defaults to qwen3:14b on your local Ollama. Takes 30 seconds.

curl -X POST /api/bots \
  -d '{"name":"Acme Support"}'
02

Feed it your knowledge

Upload PDFs, DOCX, spreadsheets. Or point it at your website — we crawl it with Playwright. Vector embeddings happen on your GPU.

bot.docs.add("./manual.pdf")
bot.crawl("https://your.site")
> 847 chunks indexed in 12s
03

Embed anywhere

Drop one script tag. Shadow DOM keeps your CSS clean. Theme matches your brand. Streaming responses out of the box.

<script
  src="lumen.app/api/embed/abc.js"
  defer
></script>

Try it now

This is a real Lumen widget.

Trained on this very landing page. Ask it anything about the product.

Lumen Demo Bot
Online · qwen3:14b
Hey! I'm a Lumen demo bot. Ask me how Lumen works — pricing, models, privacy, embedding.
Try asking

This demo runs in-browser. The real Lumen pipes streaming responses from local Ollama via SSE.

Pricing that respects you

Self-host for free.
Pay us only if you don't want to.

Self-hosted

Freeforever

Run Lumen on your own hardware. Open source. Yours.

Clone the repo
  • Unlimited bots, messages, docs
  • Unlimited rate limits
  • All 19 local Ollama models
  • pgvector RAG, crawler, embed widget
  • Community support
Most popular

Pro

$19/month

Skip the ops. We host it on the same hardware, you get a domain.

Start 14-day trial
  • 5 bots, 10,000 msgs/mo
  • 500 docs, 5GB storage
  • Custom domain + SSL
  • Conversation analytics
  • Email support

Team

$49/month

For growing teams. Higher limits, multi-seat, audit logs.

Start 14-day trial
  • 25 bots, 100,000 msgs/mo
  • 5,000 docs, 50GB storage
  • Multi-user workspaces
  • Audit logs + export
  • Priority support + Slack

Questions

Everything you might be wondering.