Starter Templates

Quick Chatbot

Internal Q&A

A Streamlit chatbot over an embedded Chroma store — no separate database server, no Node toolchain. The fastest way to stand up an internal Q&A bot for a small team.

Download ZIP

Live previewinteractive mock — no backend

localhost:8501Streamlit

Internal Q&A

Team brain.

Try one — live mock, no backend.

Stack

Frontend

Streamlit

Architecture

Standard RAG

Framework

raw python

Vector DB

chroma

Corpus

small

Complexity

Low

How it works

Browser
Streamlit app
FastAPI /query
Standard RAG

The frontend talks only to the backend; your API keys + pipeline URL stay server-side.

Get started

Option A · Docker Compose (one command)
cp .env.example .env        # add your API key(s)
docker compose up --build
Option B · Backend (manual)
cd backend
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env        # add your API key(s)
python pipeline.py ingest ./corpus
uvicorn serve:app --reload  # http://localhost:8000
Option B · Frontend (Streamlit)
cd frontend
pip install -r requirements.txt
cp .env.example .env
streamlit run app.py        # http://localhost:8501

The downloaded README.md has the full guide — vector DB setup, API keys, and deployment to Render/Railway + Streamlit Cloud.

Project structure28 backend · 6 frontend · 38 files total

backend/
.github/
workflows/
deploy.yml
eval/
__init__.py
README.md
run_eval.sh
synthetic_qa.py
test_answer_quality.py
test_retrieval.py
generation/
__init__.py
generator.py
prompt.py
ingestion/
__init__.py
chunker.py
embedder.py
loader.py
observability/
__init__.py
tracing.py
retrieval/
__init__.py
reranker.py
retriever.py
.env.example
config.yaml
docker-compose.yml
Dockerfile
pipeline.py
README.md
render.yaml
requirements.txt
serve.py
frontend/
.streamlit/
config.toml
.env.example
.gitignore
app.py
Dockerfile
requirements.txt
.env.example
.gitignore
docker-compose.yml
README.md

Ready to build?

Download the full monorepo and follow the README.

Download ZIP