Case study · 2026 · AI · Web · Custom software
Upload a folder of documents.Built a private AI assistant that answers from your own documents. Runs on your own server, no data leaves the building.
AI Chatbot Maker is a turnkey SaaS for spinning up company-private chatbots: upload a folder, point at a website feed, and get an embeddable chatbot that only answers from that data. The studio shipped the SaaS dashboard, the Ollama-backed local LLM stack, the multi-tenant pgvector store, and the Docker-image deploy.
- Python
- LangChain
- PostgreSQL
- Docker
- Ollama
- FastAPI

Inside the build



Overview
- 5 min
- Folder → live chatbot
- 100%
- On-prem · zero data leaves
- RLS
- Per-tenant isolation
- <embed>
- Snippet · no integration project
Client uploads a folder of documents or points at their website; they get a turnkey AI chatbot that only answers from their own data. Local LLM via Ollama · nothing leaves the company's server, GDPR-safe by default. One Docker image, one command to deploy.
What shipped
What it does
- Knowledge sources: uploaded files, folders, website URLs · mix any
- 100% local · Ollama + Postgres pgvector on-server, no external API
- One-click chatbot creation with an embed snippet for the company's site
- Docker-image deploy · 5 minutes to your own server
- Multi-tenant SaaS mode · many companies one platform, strict RLS isolation
The problem
- ChatGPT plugins don't know your company data · generic answers for everyone
- OpenAI / Anthropic integration leaks data · hard to square with GDPR
- A custom chatbot build is 3-6 months · doesn't fit a mid-market budget
- Training a company-specific model needs an ML team
Why it matters
- Live chatbot in 5 minutes, answering only from your own data
- Nothing leaves the server · audit-ready, GDPR-compatible
- One platform, many clients · SaaS model with multi-tenant isolation
- Embed snippet for the company site · no integration project needed
How it shipped
- 01 · BRIEF
Solve the GDPR + speed-to-live conflict.
OpenAI integrations leak data; bespoke chatbot builds take 6 months. We scoped a SaaS that runs locally on the customer's server · GDPR-safe by default, one Docker image to deploy.
- 02 · BUILD
FastAPI + Ollama + Postgres pgvector.
FastAPI carries the multi-tenant API, Ollama runs the local LLM, Postgres + pgvector handles per-tenant retrieval with row-level security · LangChain glues the retrieval-augmented generation pipeline.
- 03 · SHIP
One Docker image, embeddable snippet.
Customer pulls a single image, runs one command, gets a dashboard. From there: upload data → click 'create chatbot' → paste the embed snippet on their site. 5 minutes end-to-end on a fresh box.
Stack
Local LLM
Ollama + Postgres pgvector on-prem
Zero external API calls · the answer never leaves the customer's server. GDPR + audit-ready out of the box.
Sources
Files, folders, website URLs · mix any
Knowledge base accepts uploaded docs and crawls a site feed in the same project · re-ingest is one click.
Multi-tenant
Per-tenant RLS isolation
Postgres row-level security guarantees no tenant ever sees another's data · also enforced at the retrieval layer.
Deploy
One Docker image, one command
Customer ops team handles it on their own infra · no AWS-account-share, no shared SaaS tenant.
Case study
“We had a strict GDPR rule and 6 weeks to ship. The studio built a chatbot that runs entirely on our own server, we just upload a folder of documents, and it answers like a colleague who's read all of them. The website code went live on day 38. Not a single byte of customer data has ever left our machine. Our compliance officer literally smiled when he saw it.”
More work
Next project
AIHealthIQ