If you have ever tried to self-host an LLM interface on a modest device, you know the struggle:
- The Bloat: Python-based containers that eat Gigabytes of RAM just to idle.
- The Lag: Waiting 30+ seconds for a server to boot and another minute to load chat history.
- The Config Hell: Spending hours wrestling with pipelines just to get a simple feature like "Title Generation" to work reliably.
We refused to accept that "powerful" means "heavy." We built llumen to fill the gap between commercial products (easy to setup, but no privacy) and power-user tools (private, but heavy & complex).
| Feature | Typical "Power User" UI | llumen |
|---|---|---|
| Asset Footprint | HUGE (GBs) | Tiny (12MB) |
| RAM Usage | High (Nightmare to Debug) | < 128MB |
| Setup Time | Hours of config | Zero-Config |
Don't let the size fool you. Llumen is lightweight in resources, but heavy on capability.
- π OpenAI Compatible: Works with OpenRouter, local models, or OpenAI-compatible server.
- π Blazing Fast: Sub-second cold starts. No more waiting.
- π§ Smart & Deep: Built-in "Deep Research" capabilities, web-search integration.
- π¨ Rich Media: Handles PDF uploads, image generation, and renders complex LaTeX/Code.
- π€ Run Anywhere: Windows, Linux, Docker, and fully optimized for Arm64 (yes, it fly on a Raspberry Pi).
video.mp4
Prove the speed yourself. If you have Docker, you are 30 seconds away from chatting.
Important
Default Credentials:
- User:
admin - Pass:
P@88w0rd
Our multi-stage build produces a tiny, efficient container.
docker run -it --rm \
-e API_KEY="<YOUR_OPENROUTER_API_KEY>" \
-p 80:80 \
-v "$(pwd)/data:/data" \
ghcr.io/pinkfuwa/llumen:latestThat's it. No pipelines to configure. No dependencies to install.
See ./docs/sample for docker-compose examples.
Prefer a binary? We support that too. Check the Releases for Windows and Linux binaries.
It works out of the box, but if you want to tweak it:
API_KEY(required) β Your OpenRouter/Provider key.OPENAI_API_BASEβ Custom endpoint (Default:https://openrouter.ai/api).DATABASE_URLβ SQLite path (Default:sqlite://data/db.sqlite?mode=rwc).BIND_ADDRβ Network interface (Default:0.0.0.0:80).
- User Guide: ./docs/user/README.md - Full features and usage.
- For Developers:
- Build from source:
./docs/chore/README.md - Architecture docs:
./docs/dev/README.md
- Build from source: