Open-source AI support platform

Controllable AI customer support for modern product teams

Basjoo combines RAG knowledge bases, an embeddable chat widget, multi-provider LLM agents and an admin console into one self-hosted support command center: your website, docs and files become auditable, citable AI support, and every session, handoff, lead and unanswered question stays on your own server.

Basjoo logo from GitHub

Basjoo Core

Online · no GPU required

RAG

LLM

SSE

RBAC

Widget

Deploy pipeline
1Ingest websites and docs
2Build vector knowledge
3Select an LLM provider
4Embed multilingual widget
MIT open source
Docker deployable
Multi-provider LLM
RAG knowledge base
SSE streaming
01

Product teams

Turn help centers, websites and product docs into a 24/7 AI support entry point — answers carry their sources, and a wrong answer is one Q&A edit away.

02

Engineering teams

A layered FastAPI + Vite + Qdrant architecture: one docker compose brings the stack up, one field switches the LLM provider.

03

Support operators

Watch sessions, take over at any moment, and track the unanswered queue and positive-feedback rate from one console.

Feature grid

Not just a chat bubble — a support operating system

Basjoo covers the critical path from ingestion and retrieval to model routing and embedded conversations.

01

RAG knowledge bases

A KB lives on its own and outlives the agents bound to it: crawl one page or a whole site, or upload txt / md / html / pdf / docx / xlsx, one vector collection per KB.

02

Thirteen LLM providers

OpenAI-compatible, OpenAI native, Anthropic, Gemini, xAI, DeepSeek, OpenRouter, z.ai, Volcengine, Moonshot, Bailian, Tencent Cloud and SiliconFlow — one field to switch.

03

Curated answers first

Every KB carries a Q&A index that matches ahead of retrieval, so a correction takes effect without a reindex; an unanswered question becomes a pair in one click.

04

SSE streaming with sources

Token-by-token answers with source citations, a first-token keepalive and per-visitor rate limits; a failing provider gets a controlled fallback, never a silent fabrication.

05

Embeddable widget

One script tag: floating bubble, inline container or iframe, with an origin whitelist, path exclusions, per-visitor traffic split and bilingual copy.

06

Human takeover

Watch live sessions, take over, reply, hand back to the bot, resolve; outside business hours the away message is shown but never written into the transcript.

07

Leads and analytics

A public, idempotent lead route plus eight metrics with deltas and CSV export; finished conversations are classified resolved / abandoned / escalated / unanswered.

08

Runs without a GPU

A bundled CPU embedding container means the knowledge base works before you own any API key; seven signed webhook events retry with backoff.

Architecture

Every step between your product and the model stays observable

Widget, backend, knowledge base, vector search, Redis, and LLM providers are separated so teams can deploy quickly and replace pieces deliberately.

1Website / App
2Basjoo Widget
3FastAPI Backend
4Knowledge Base
5Qdrant
6LLM Providers
7SQLite + Redis
8Admin Console

Screenshots

Admin console and customer widget, ready in two languages

The language switch also changes screenshot sources to show Basjoo in real Chinese and English environments.

Current: English shots
Basjoo admin screenshot 1
Basjoo admin screenshot 2
Basjoo admin screenshot 3
Basjoo embeddable chat widget screenshot
Basjoo interface thumbnail 1
Basjoo interface thumbnail 2
Basjoo interface thumbnail 3

Deploy

Upgrade scripted support into a controllable product agent

No GPU required. Inference runs through external APIs while you control keys, origins, and knowledge sources. Explore the source, deploy Basjoo, or follow the builder on X for updates.

Ship a self-hosted support center in minutes
curl -fsSL https://raw.githubusercontent.com/haoyiyin/basjoo/main/install-deploy.sh | sudo sh
FastAPIVite 8React 18SQLiteRedisQdrantDockernginx