Live demo

Semantic Search Studio

An LLM-powered semantic search engine over a private document knowledge base, with cited answers.

  • Python 3.11+
  • FastAPI
  • ChromaDB
  • Anthropic SDK
  • Sentence Transformers
  • React 18
  • Vite
  • Docker

A user uploads documents (PDF, Markdown, or plain text), and the system makes that corpus searchable by meaning rather than by keyword. When the user asks a question in natural language, the engine retrieves the most semantically relevant passages and uses Claude to synthesize a single, grounded answer with inline citations back to the source material.

Try it live → — running right here on this site: upload a document (PDF, Markdown, or text) and ask a question about it. (Answer synthesis calls Claude and needs an API key configured on the server; document upload and passage retrieval work regardless.)

The problem it solves

Traditional keyword search (Ctrl+F, BM25, SQL LIKE) fails when the user's wording doesn't match the document's wording — someone searching "how do I get my money back" won't find a paragraph titled "Refund Policy." Semantic search closes that gap by matching on intent. Layering an LLM on top turns a list of blue links into a direct, cited answer: the difference between finding and knowing.

Tech stack

LayerChoice
BackendPython 3.11+ · FastAPI · Uvicorn · ChromaDB · Anthropic SDK · Sentence Transformers · pypdf · Pydantic
FrontendReact 18 · Vite
ContainerizationDocker

The live demo above runs this exact backend; to see the ingestion, retrieval, and generation pipeline, view the source.