Skip to content

Knowledge Center

The Knowledge Center is where you build and manage the document libraries behind RAG. A knowledge base (KB) can ground Chat turns, Co-Writer edits, Book generation, and Partner conversations. What’s distinctive here is that DeepTutor offers a choice of retrieval engines — you pick the one whose trade-offs fit your material.

Open Knowledge Center in the left sidebar. The page has two parts: the retrieval engines available to you, and the knowledge bases you’ve built.

The Knowledge Center: retrieval engine cards on top, your knowledge bases below

Each KB is bound to one engine. They differ in how they retrieve, what they need installed, and what document types they support.

EngineBest forNotes
LlamaIndexThe default — works out of the box.Local vector retrieval with hybrid BM25/vector fusion.
PageIndexReasoning retrieval with page-level citations.Hosted, vectorless. Requires an API key; PDF/Office/Markdown/text/CSV.
GraphRAGKnowledge-graph retrieval (global/local/drift/basic).Local. Needs pip install 'deeptutor[graphrag]'; indexing is LLM-heavy.
LightRAGGraph + vector retrieval with multimodal parsing.naive/local/global/hybrid/mix modes. Needs pip install 'deeptutor[rag-lightrag]'.
LightRAG ServerA standalone LightRAG server you already run.No local index — connect a KB to the server’s URL, queried over HTTP (naive/local/global/hybrid/mix). Always available.
ObsidianConnecting a vault you already keep.The tutor navigates and writes notes in place — no upload, no index. Local / self-hosted only.

Cards show their state — Ready, Needs key, or Not installed — so you know at a glance which engines are usable right now.

Press New knowledge base. The first choice is the most important:

  • Create new — upload documents and build a fresh index.
  • Link existing — reuse an index you already built elsewhere; DeepTutor reads it in place with no upload and no re-index.

Then name the KB, pick the index engine, and add documents (browse files or select an entire folder).

The Create knowledge base dialog: create-new vs link-existing, name, index engine, and files

Open a KB to manage it. The panel pairs a document viewer with four tabs:

TabWhat it does
FilesSource documents and their extraction status, with an inline preview; remove any one here — even from an error-state KB — without rebuilding.
Add documentsUpload more PDFs, Office files, Markdown, text, code, or data.
Index versionsFlat version-N storage directories keyed by embedding signature.
SettingsEmbedding model, chunking, and retrieval parameters for this KB.

A knowledge base panel: Files / Add documents / Index versions / Settings, with a PDF preview

Versioning model. Re-indexing writes a new version-N directory and keeps prior ones, so a working index is never destroyed mid-rebuild. Treat older versions as retained history and fallback storage.

Before a document can be retrieved, it has to be turned into text. Settings → Knowledge Base → Document Parsing picks the engine that does that — and, crucially, local model downloads are off by default; they only happen when you explicitly allow them.

Settings → Document Parsing: Text-only, MinerU, Docling, markitdown, and PyMuPDF4LLM engines

EngineTrade-off
Text-only (built in)Plain text extraction for PDF/Office/text. No package, no download, no layout structure.
MinerUHighest-fidelity multimodal parsing (layout, tables, formulas). Local CLI downloads models, or use the hosted cloud API. PDF only.
DoclingStructured conversion (layout/tables). Downloads local models on first run. PDF/Office/HTML/images.
markitdownLightweight, no downloads, broad format support → Markdown. pip install deeptutor[parse-markitdown].
PyMuPDF4LLMLightweight, no downloads or CUDA. PDF/e-book → Markdown, can extract images; PDF and e-books only. pip install deeptutor[parse-pymupdf4llm].
Terminal window
deeptutor kb list
deeptutor kb create physics --doc chapter1.pdf
deeptutor kb create textbooks --docs-dir ./pdfs
deeptutor kb add physics --doc chapter2.pdf
deeptutor kb search physics "What is angular momentum?"
deeptutor kb set-default physics
  • Configure an embedding provider in Settings → Models → Embedding before building serious KBs.
  • If you change embedding models, re-index rather than mixing vector spaces.
  • Keep a small test KB for Partner/channel smoke tests.
  • For Docker, persist the whole data/ tree so KB versions survive container restarts.