Skip to content
All work
AI systems

RAG-Based AI Chatbot

A chatbot that answers from your documents rather than from whatever the model happened to memorise. Documents go in through an admin dashboard; questions come in through a widget that any site can embed.

The full retrieval path is here: document processing, vector embeddings, semantic search, then generation grounded in what came back.

AI systems

Retrieval is the product

In a RAG system the model is interchangeable and the retrieval is not. What decides whether an answer is useful is chunking, embedding, and whether semantic search surfaces the passage that actually contains the answer — all of it upstream of the model call.

Qdrant holds the vectors; LangChain wires the stages together; OpenAI and Gemini are both wired in, which keeps the generation step a swappable decision rather than a dependency.

Making it operable

The admin dashboard is where the system stops being a demo. Uploading documents, managing what is in the knowledge base, and generating API keys are the things an owner does weekly, so they belong in an interface rather than in a runbook.

Distribution

The chat surface ships as an embeddable widget: one JavaScript snippet, any website. Making integration a copy-paste rather than a project is usually what decides whether a tool like this gets used at all.

What it taught me

  • Swapping the model is easy. Fixing retrieval is the work — and it is where the answer quality actually comes from.
  • Anything the owner does more than once a month needs a screen, not documentation.