
HKUDS (Data Intelligence Lab@HKU) · DeepTutor: Open-Source, Self-Hosted AI Tutor with Mastery Paths, Knowledge-Base RAG, and Inspectable Memory
DeepTutor is a free, Apache-2.0 personal tutoring agent you run on your own machine: it teaches from your documents and the web through chat, quizzes, worked solutions, cited research reports, mastery paths, and interactive books, and keeps a memory of you that you can read and edit. It suits self-learners, students, and technical teachers or labs who are comfortable running a Python or Docker app with their own model provider.
Best for
Self-learners, students, and technically comfortable teachers or research labs who want a free, self-hosted tutor that teaches from their own documents, tracks mastery, and keeps an auditable memory, using whichever model provider or local model they choose
Not ideal for
Schools or families that need a managed, supported service with accounts out of the box, people who want a mobile app or zero-setup study tool, and anyone unwilling to run Python or Docker and manage model and embedding keys
Who it's for
Self-learners, students, educators, and research groups who want an open-source, self-hosted AI tutor grounded in their own materials
DeepTutor is less a chatbot than a self-hosted study environment: one agent loop drives tutoring, quizzes, research, reading, and a Mastery Path that only moves forward when an assessment says you have learned the point. Two choices stand out. Memory is a set of files you can open and audit, not an opaque profile, and the tutor can be reached from IM apps or driven by other agents. That suits learners and labs who want control over models and data. The cost is operational. You install, configure, and keep updating a fast-moving project with a very large settings surface, and quality depends on the chat and embedding models you pick. Start with the Docker trial and one knowledge base before turning on Partners or multi-user mode.
Who should use it
Self-learners and students who want a tutor grounded in their own textbooks, papers, and videos with real progress tracking; teachers, tutors, and research groups who want to host one instance for several learners with isolated workspaces; and developers who want a learning backend that Claude Code, Codex, or their own agents can call.
Who should skip it
People who want a polished hosted app or mobile study tool with no setup, institutions that need vendor support, published terms, or LMS integration, and anyone who does not want to run Python or Docker or manage model API keys.
Open Source
Free
Free tier limits: All features are free. Web search works without a key through DuckDuckGo by default, and local providers such as Ollama need no API key.
Note: There is no hosted or paid plan; the maintainers state they have no paid online products of any form. Costs come from the model, embedding, search, speech, and generation providers you configure, or only your hardware with local models. An existing ChatGPT plan (through the experimental OpenAI Codex sign-in) or a GitHub Copilot subscription with model access can be used instead of a separate API key; these sign-ins are per account and cannot be shared with other users through grants.
Modalities
Text, Documents (PDF, DOCX, XLSX, PPTX, EPUB), Images (with vision-capable models), Video (YouTube and Bilibili transcripts), Voice (text-to-speech and speech-to-text), Image and video generation
API pricing
Free local FastAPI backend (`deeptutor serve`) with an OpenAPI spec and turn WebSocket, plus NDJSON output from the CLI; model usage is billed by the provider you connect
Available models
Studying a course from your own textbook
You build a knowledge base from the PDF, then use a Mastery Path that splits the goal into knowledge points, examines you on each, and schedules spaced review, while Chat and Solve explain anything you get wrong with citations to the source.
A tutor for a small class or family on one server
With authentication enabled, an admin shares models and knowledge bases while each learner keeps an isolated workspace and memory, and guardian accounts can review reports and approve materials.
Learning tools for a coding agent
Claude Code or Codex can call `deeptutor run` with JSON output to research a topic and then quiz you on it in the same session, so learning fits into a terminal workflow.
DeepTutor vs. Gemini Notebook (formerly NotebookLM)
Gemini Notebook (formerly NotebookLM) is Google's hosted research assistant: you add sources and it answers with citations and generates study aids such as audio overviews, flashcards, and quizzes, with a free tier and no setup. DeepTutor covers similar ground on your own machine and goes further on teaching: Mastery Paths with assessed progress, worked solutions, living books, an editable memory of the learner, IM-based tutors, and a choice of models and retrieval engines. Pick Gemini Notebook for quick, zero-setup study from sources, and DeepTutor if you want a tutor you host and control.
DeepTutor vs. OpenMAIC
OpenMAIC (MIT, Tsinghua University) turns a topic or your materials into a generated classroom: narrated slides, simulations, and project-based activities taught by multiple AI teachers and classmates, with exports to PowerPoint and HTML. DeepTutor (Apache-2.0, HKU) is organized around one learner over time: chat-based tutoring, quizzes, research, reading, and Mastery Paths over your knowledge bases, with persistent memory. Pick OpenMAIC to produce or sit through interactive lessons, and DeepTutor for an ongoing personal tutor and study workspace.
What is DeepTutor?
DeepTutor is an open-source, self-hosted AI tutor from the HKUDS group at the University of Hong Kong. One agent runtime powers chat tutoring, quizzes, worked solutions, cited research reports, reading with page or timestamp citations, interactive books, and Mastery Paths that track what you have actually learned, all grounded in knowledge bases you build from your own materials.
Is DeepTutor free and open source?
Yes. DeepTutor is released under the Apache-2.0 license and installs from PyPI as `deeptutor` or as a Docker image. The maintainers state they have no paid online products, so there is no hosted plan; your only costs are the model, embedding, and search providers you connect, or nothing beyond your hardware with local models.
How do I install DeepTutor?
There are four paths: `pip install -U deeptutor` followed by `deeptutor init` and `deeptutor start` (needs Python 3.11 to 3.14 and Node.js 20 or newer), a single Docker container from ghcr.io/hkuds/deeptutor, a source checkout for development, or a CLI-only build without the web interface. The web app opens at 127.0.0.1:3782 by default, and you configure model providers in Settings.
Which models does DeepTutor support?
The provider catalog includes OpenAI, Anthropic, Google Gemini, Azure OpenAI, DeepSeek, Mistral, Groq, OpenRouter, Qwen, Kimi, Zhipu GLM, MiniMax, SiliconFlow, NVIDIA NIM, and many others, plus any OpenAI-compatible endpoint. GitHub Copilot and an experimental ChatGPT sign-in through OpenAI Codex can replace a separate API key, and Ollama, LM Studio, llama.cpp, vLLM, and Lemonade run models locally without one.
Can other AI agents use DeepTutor?
Yes. `deeptutor run` with `--format json` streams one NDJSON event per line for scripts and agents, the repository ships a SKILL.md handover for coding agents such as Claude Code and Codex, and `deeptutor serve` exposes a FastAPI backend with an OpenAPI spec. In the other direction, DeepTutor's My Agents feature can consult a live Claude Code, Codex, or other coding-agent CLI from inside a chat turn.
Can several students share one DeepTutor server?
Yes, once you enable authentication, which is off by default. The first registered user becomes the admin and controls models, credentials, and shared knowledge bases; other users get isolated workspaces and only the models, knowledge bases, and tools they are granted. Learner accounts have locked learning capabilities and material policies, and authorized guardians can view reports, approve materials, and reset credentials.
DeepTutor vs Gemini Notebook: what is the difference?
Gemini Notebook is a hosted Google service that answers questions about your sources with citations and generates study aids, with no setup. DeepTutor is self-hosted and open source, lets you choose the model and retrieval engine, and adds teaching features such as Mastery Paths with assessed progress, worked solutions, living books, an inspectable learner memory, and tutors you can reach over IM apps.
Researchers and students who need to ask questions about a defined set of documents with cited answers
Freemium
Tsinghua University (THU-MAIC)
Self-learners, teachers, and course or training builders who want AI-generated, multi-agent interactive lessons from a topic or their own materials, and technical teams that want to host, modify, or embed that capability under an MIT license
FreeDeepTutor is an open-source learning workspace from the HKUDS group (the Data Intelligence Lab at the University of Hong Kong), first released at the end of 2025 and rebuilt in 2026 around a single agent loop. You install it from PyPI (`pip install deeptutor`), from source, or as one Docker container, run `deeptutor init` to pick a model provider, and open a local web app; a CLI-only build is available for headless use. Every mode runs on the same runtime and session context: Chat (an agent that calls tools such as web, paper, and Zotero search, retrieval over your knowledge bases, GeoGebra analysis, and code execution), Ask Questions, Quiz, Solve for step-by-step reasoning, Deep Research for cited reports, Visualize, Course Study, Audio Overview, Immersive Reading for PDFs, EPUBs, and YouTube or Bilibili videos with page- or timestamp-grounded tutoring, and Mastery Path, which turns a goal into modules of typed knowledge points and only advances when an assessment, or your explicit declaration, says you have mastered a point, with spaced review later. Book compiles knowledge bases and notebooks into an editable living book with quizzes, flash cards, figures, and per-page chat, and Co-Writer is a selection-aware Markdown editor. Knowledge bases can use LlamaIndex, PageIndex, GraphRAG, LightRAG, or a linked Obsidian vault, among other engines, and can follow GitHub repositories or documentation sites. Memory is a three-layer, file-backed system (event traces, per-surface facts, cross-surface synthesis) that you can inspect in a graph rather than a hidden vector store. Beyond the web app, Partners are persistent tutors on the same brain that you can reach over Telegram, Slack, Discord, Feishu, WeCom, WhatsApp, Microsoft Teams, and other IM channels; My Agents lets a chat turn consult a live Claude Code, Codex, or other coding-agent CLI on your machine; and other agents can drive DeepTutor through its CLI's NDJSON output or its FastAPI backend. Optional multi-user mode adds admin, learner, and guardian roles with isolated workspaces. The maintainers state they have no paid online products, so there is no hosted version: you pay only for the model and search providers you connect, or nothing beyond hardware with local models. The tradeoffs are setup and pace. You run and update the service yourself, retrieval needs a separately configured embedding model, the surface is very large, and releases arrive every few days.
v1.6.15 lets you preview learning-path changes before applying them, has the tutor present two to four questions as a group and grade each answer independently, and keeps teaching preferences and unresolved misunderstandings in bounded memory during long sessions. It also adds an optional query-rewrite layer with retrieval comparisons in `deeptutor kb eval`, native Gemini speech, and an optional request-screening extra.
v1.6.14 lets you ask about an exact figure, table, or PDF page in a knowledge base, makes indexing recoverable, moves YouTube and Bilibili learning into Reading, adds tools for reading versioned arXiv papers and checking paper claims against a pinned GitHub revision, and introduces a reviewed plugin lifecycle in the CLI.
v1.6.12 lets each workspace place and move its knowledge bases, connects searchable Kiwix ZIM archives without indexing a copy, carries source figures into grounded answers for vision-capable models, and adds a workspace Task Board and a German interface.
Are you the founder? Claim this listing →