如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
功能 · 快速开始 · 探索 · TutorBot · 命令行界面 · 多用户 · 社区
[2026.5.28] https://github.com/HKUDS/DeepTutor/releases/tag/v1.4.2 — v1.4.1版本的稳定性与优化:Gemini 2.5+在可视化和聊天功能中全面解锁,修复ContextVar认证路由问题(#485),强化推理和原生工具标签协议,优化所有聊天界面的流畅流式用户体验,新增可折叠的“最近”侧边栏,并支持Lemonade本地服务提供商。
[2026.5.27] https://github.com/HKUDS/DeepTutor/releases/tag/v1.4.1 — 安全与稳定性补丁:锁定TutorBot工具沙箱,实现每用户资源隔离,为具备视觉能力的服务提供商添加多模态图像 fallback,提供用于与TutorBot交互的HTTP/SSE API,并修复v1.4.0版本的聊天功能回归问题。
[2026.5.22] https://github.com/HKUDS/DeepTutor/releases/tag/v1.4.0 — v1.4正式发布版本:自动模式、三层记忆体、智能体化深度研究/解题/提问功能、LlamaIndex RAG重构、可视化/动画功能合并,以及推理努力标准化、工具模式 fallback 和重启安全的对话运行时。
[2026.5.21] https://github.com/HKUDS/DeepTutor/releases/tag/v1.4.0-beta — 三层记忆体工作台(L1/L2/L3),所有聊天功能基于单一智能体引擎重构,仅使用LlamaIndex的RAG,以及统一的设置与功能界面。
过去的版本(超过2周前)
[2026.5.10] https://github.com/HKUDS/DeepTutor/releases/tag/v1.3.10 — 远程Docker CORS恢复,跨SDK提供商的
DISABLE_SSL_VERIFY支持,更安全的代码块引用,以及可选的Matrix端到端加密插件。
[2026.5.9] https://github.com/HKUDS/DeepTutor/releases/tag/v1.3.9 — TutorBot支持Zulip和NVIDIA NIM,更安全的思考模型路由,
deeptutor start命令,侧边栏工具提示,以及会话存储一致性。
[2026.5.8] https://github.com/HKUDS/DeepTutor/releases/tag/v1.3.8 — 可选的多用户部署,包含隔离的用户工作区、管理员权限、认证路由和范围化的运行时访问。
[2026.5.4] https://github.com/HKUDS/DeepTutor/releases/tag/v1.3.7 — 思考模型/服务提供商修复,可见的知识库索引历史,以及更安全的协同写作器清除/模板编辑。
[2026.5.3] https://github.com/HKUDS/DeepTutor/releases/tag/v1.3.6 — 基于目录的聊天和TutorBot模型选择,更安全的RAG重新索引,OpenAI响应令牌限制修复,以及技能编辑器验证。
[2026.5.2] https://github.com/HKUDS/DeepTutor/releases/tag/v1.3.5 — 更流畅的本地启动设置,更安全的RAG查询,更清晰的本地嵌入认证,以及设置界面深色模式优化。
[2026.5.1] https://github.com/HKUDS/DeepTutor/releases/tag/v1.3.4 — 书籍页面聊天持久化与重建流程,聊天到书籍的引用,更强的语言/推理处理能力,RAG文档提取强化。
[2026.4.30] https://github.com/HKUDS/DeepTutor/releases/tag/v1.3.3 — 支持NVIDIA NIM和Gemini嵌入,统一的空间上下文(包含聊天历史/技能/记忆),会话快照,RAG重新索引恢复能力。
[2026.4.29] https://github.com/HKUDS/DeepTutor/releases/tag/v1.3.2 — 透明的嵌入端点URL,针对无效持久化向量的RAG重新索引恢复能力,思考模型输出的内存清理,深度解题运行时修复。
[2026.4.28] https://github.com/HKUDS/DeepTutor/releases/tag/v1.3.1 — 稳定性:更安全的RAG路由和嵌入验证,Docker持久化,IME安全输入,Windows/GBK兼容性增强。
[2026.4.27] https://github.com/HKUDS/DeepTutor/releases/tag/v1.3.0 — 带重新索引工作流的版本化知识库索引,重建的知识工作区,带新适配器的嵌入自动发现,空间中心。
[2026.4.25] https://github.com/HKUDS/DeepTutor/releases/tag/v1.2.5 — 带文件预览抽屉的持久化聊天附件,支持附件的能力流水线,TutorBot Markdown导出。
[2026.4.25] https://github.com/HKUDS/DeepTutor/releases/tag/v1.2.4 — 文本/代码/SVG附件,一键式设置向导,Markdown聊天导出,紧凑的知识库管理界面。
[2026.4.24] https://github.com/HKUDS/DeepTutor/releases/tag/v1.2.3 — 文档附件(PDF/DOCX/XLSX/PPTX),推理思考块显示,Soul模板编辑器,协同写作器保存到笔记本。
[2026.4.22] https://github.com/HKUDS/DeepTutor/releases/tag/v1.2.2 — 用户编写的技能系统,聊天输入性能全面优化,TutorBot自动启动,书籍库界面,可视化全屏模式。
[2026.4.21] https://github.com/HKUDS/DeepTutor/releases/tag/v1.2.1 — 每阶段令牌限制,所有入口点的“重新生成响应”功能,RAG和Gemma兼容性修复。
[2026.4.20] https://github.com/HKUDS/DeepTutor/releases/tag/v1.2.0 — 书籍引擎“活书”编译器,多文档协同写作器,交互式HTML可视化,问题库@提及功能。
[2026.4.18] https://github.com/HKUDS/DeepTutor/releases/tag/v1.1.2 — 基于模式的频道标签页,RAG单流水线整合,外部化聊天提示。
[2026.4.17] https://github.com/HKUDS/DeepTutor/releases/tag/v1.1.1 — 通用“立即回答”,协同写作器滚动同步,统一设置面板,流式停止按钮。
[2026.4.15] https://github.com/HKUDS/DeepTutor/releases/tag/v1.1.0 — LaTeX块数学全面优化,LLM诊断探针,Docker和本地LLM使用指南。
[2026.4.14] https://github.com/HKUDS/DeepTutor/releases/tag/v1.1.0-beta — 可收藏会话,Snow主题,WebSocket心跳与自动重连,嵌入注册表全面优化。
[2026.4.13] https://github.com/HKUDS/DeepTutor/releases/tag/v1.0.3 — 带书签和类别的问题笔记本,可视化功能中的Mermaid支持,嵌入不匹配检测,Qwen/vLLM兼容性,LM Studio和llama.cpp支持,以及Glass主题。
[2026.4.11] https://github.com/HKUDS/DeepTutor/releases/tag/v1.0.2 — 整合搜索功能并支持SearXNG fallback,修复服务提供商切换问题,以及前端资源泄漏修复。
[2026.4.10] https://github.com/HKUDS/DeepTutor/releases/tag/v1.0.1 — 可视化功能(Chart.js/SVG),防止测验重复,以及o4-mini模型支持。
[2026.4.10] https://github.com/HKUDS/DeepTutor/releases/tag/v1.0.0-beta.4 — 带速率限制重试的嵌入进度跟踪,跨平台依赖修复,以及MIME验证修复。
[2026.5.22] 🌐 我们的官方文档网站已上线:deeptutor.info — 指南、参考资料和功能导览一站式获取。
[2026.4.19] 🎉 111天后,我们的星标数达到了20k!感谢大家的大力支持 — 我们将持续迭代,致力于为每个人提供真正个性化、智能化的辅导体验。
[2026.4.10] 📄 我们的论文已在arXiv上线!阅读预印本,了解DeepTutor背后的设计理念和思想。
[2026.4.4] 好久不见!✨ DeepTutor v1.0.0终于发布 — 这是一次原生智能体(agent-native)的进化,包括全新架构重写、TutorBot以及Apache-2.0许可下的灵活模式切换。新的篇章已经开启,我们的故事将继续!
[2026.2.6] 🚀 仅用39天,我们的星标数就达到了10k!非常感谢了不起的社区给予的支持!
[2025.12.29] DeepTutor正式发布!
一个容器包含完整Web应用。镜像位于GitHub Container Registry:
ghcr.io/hkuds/deeptutor:latest — 稳定版ghcr.io/hkuds/deeptutor:pre — 预发布版(如有)docker run --rm --name deeptutor \
-p 127.0.0.1:3782:3782 \
-p 127.0.0.1:8001:8001 \
-v deeptutor-data:/app/data \
ghcr.io/hkuds/deeptutor:latest
[!IMPORTANT] 需同时映射
3782和8001。3782用于提供Web UI;8001是FastAPI后端,浏览器会直接调用该端口——容器内没有代理。如果跳过8001映射,页面仍能加载,但设置会显示“后端不可达”且无法使用。
打开 [***] /app/data/user/settings/*.json;可从Web设置页面配置模型提供商。配置、API密钥、日志、工作区文件、记忆和知识库会持久化存储在 deeptutor-data 卷中。
-p host:container 映射的左侧部分(例如 -p 127.0.0.1:8088:3782)。如果在 /app/data/user/settings/system.json 中修改了容器侧端口,需重启并更新映射右侧部分以保持一致。-d 参数,然后使用 docker logs -f deeptutor 跟踪日志,docker stop deeptutor 停止容器,重用名称前需执行 docker rm deeptutor。deeptutor-data 卷会在重启后保留您的设置和工作区。远程Docker / 反向代理: Web UI在浏览器中运行,因此浏览器需要能够访问后端URL。对于远程服务器,打开设置 -> 网络或编辑 data/user/settings/system.json:
{
"next_public_api_base_external": "https://deeptutor.example.com"
}
public_api_base 作为兼容性别名被接受,并在保存时规范化为 next_public_api_base_external。CORS 使用前端源(origins),而非API URL。禁用身份验证时,DeepTutor 默认允许常规HTTP/HTTPS浏览器源。启用身份验证时,需添加精确的前端源:
{
"cors_origins": ["https://deeptutor.example.com"]
}
连接主机上的Ollama / LM Studio / llama.cpp / vLLM / Lemonade
在Docker内部,localhost 指容器本身,而非主机。要访问主机上运行的模型服务,建议使用主机网关:
docker run --rm --name deeptutor \
-p 127.0.0.1:3782:3782 -p 127.0.0.1:8001:8001 \
--add-host=host.docker.internal:host-gateway \
-v deeptutor-data:/app/data \
ghcr.io/hkuds/deeptutor:latest
然后在设置 → 模型中,将提供商的基础URL指向 host.docker.internal:
http://host.docker.internal:11434/v1http://host.docker.internal:11434/api/embedhttp://host.docker.internal:1234/v1http://host.docker.internal:8080/v1http://host.docker.internal:13305/api/v1Docker Desktop(macOS/Windows)通常无需 --add-host 即可解析 host.docker.internal。在Linux上,该标志是在现代Docker Engine上创建该主机名的可移植方式。
为支持RAG的文档集合提供的专用工作区。每个知识库包含四个标签页:
索引构建完全基于LlamaIndex端到端实现(v1.4重构中已合并之前的双管道拆分),具备重试安全的重新索引、嵌入不匹配检测以及对损坏的持久化向量的弹性处理。
TutorBot 不是普通聊天机器人,而是基于 https://github.com/HKUDS/nanobot 构建的持久化多实例智能体。每个 TutorBot 运行独立的智能体循环,拥有专属工作区、内存和个性。你可以创建苏格拉底式数学导师、耐心的写作教练和严谨的研究顾问——它们可同时运行,且都能随你共同成长。
deeptutor bot create math-tutor --persona "Socratic math teacher who uses probing questions"
deeptutor bot create writing-coach --persona "Patient, detail-oriented writing mentor"
deeptutor bot list # 查看所有活跃导师
DeepTutor 完全支持 CLI 原生操作。所有功能、知识库、会话、内存和 TutorBot 都可通过命令直接访问——无需浏览器。CLI 同时服务于人类(提供丰富终端渲染)和 AI 智能体(输出结构化 JSON)。
将项目根目录下的 SKILL.md 提供给任何具备工具使用能力的智能体(如 https://github.com/HKUDS/nanobot 或任何支持工具调用的 LLM),它即可自主配置和操作 DeepTutor。
示例命令——单次运行、REPL、知识库生命周期、JSON 输出、会话恢复
单次执行 — 直接从终端运行任何功能:
deeptutor run chat "Explain the Fourier transform" -t rag --kb textbook
deeptutor run deep_solve "Prove that √2 is irrational" -t reason
deeptutor run deep_question "Linear algebra" --config num_questions=5
deeptutor run deep_research "Attention mechanisms in transformers"
deeptutor run visualize "Draw the architecture of a transformer"
交互式 REPL — 支持实时模式切换的持久化聊天会话:
deeptutor chat --capability deep_solve --kb my-kb
# 在 REPL 中:使用 /cap、/tool、/kb、/history、/notebook、/config 实时切换模式
知识库生命周期 — 完全通过终端构建、查询和管理 RAG 就绪的知识库集合:
deeptutor kb create my-kb --doc textbook.pdf # 从文档创建知识库
deeptutor kb add my-kb --docs-dir ./papers/ # 添加文件夹中的论文
deeptutor kb search my-kb "gradient descent" # 直接搜索
deeptutor kb set-default my-kb # 设置为所有命令的默认知识库
双输出模式 — 人类友好的富渲染输出,以及管道友好的结构化 JSON 输出:
deeptutor run chat "Summarize chapter 3" -f rich # 彩色格式化输出
deeptutor run chat "Summarize chapter 3" -f json # 行分隔 JSON 事件
会话连续性 — 从上次中断处恢复对话:
deeptutor session list # 列出所有会话
deeptutor session open # 在 REPL 中恢复
完整 CLI 命令参考
顶层命令
| 命令 | 描述 |
|---|---|
deeptutor run | 单次运行任意功能(chat、deep_solve、deep_question、deep_research、math_animator、visualize) |
deeptutor chat | 交互式 REPL,支持可选参数 --capability、--tool、--kb、--language |
deeptutor serve | 启动 DeepTutor API 服务器 |
deeptutor bot
| 命令 | 描述 |
|---|---|
deeptutor bot list | 列出所有 TutorBot 实例 |
deeptutor bot create | 创建并启动新机器人(--name、--persona、--model) |
deeptutor bot start | 启动机器人 |
deeptutor bot stop | 停止机器人 |
deeptutor kb
| 命令 | 描述 |
|---|---|
deeptutor kb list | 列出所有知识库 |
deeptutor kb info | 显示知识库详情 |
deeptutor kb create | 从文档创建(--doc、--docs-dir) |
deeptutor kb add | 增量添加文档 |
deeptutor kb search | 搜索知识库 |
deeptutor kb set-default | 设置为默认知识库 |
deeptutor kb delete | 删除知识库(--force) |
deeptutor memory
| 命令 | 描述 |
|---|---|
deeptutor memory show [file] | 查看记忆(summary、profile 或 all) |
deeptutor memory clear [file] | 清除记忆(--force) |
deeptutor session
| 命令 | 描述 |
|---|---|
deeptutor session list | 列出会话(--limit) |
deeptutor session show | 查看会话消息 |
deeptutor session open | 在 REPL 中恢复会话 |
deeptutor session rename | 重命名会话(--title) |
deeptutor session delete | 删除会话 |
deeptutor notebook
| 命令 | 描述 |
|---|---|
deeptutor notebook list | 列出笔记本 |
deeptutor notebook create | 创建笔记本(--description) |
deeptutor notebook show | 查看笔记本记录 |
deeptutor notebook add-md | 导入 Markdown 作为记录 |
deeptutor notebook replace-md | 替换 Markdown 记录 |
deeptutor notebook remove-record | 删除记录 |
deeptutor book
| 命令 | 描述 |
|---|---|
deeptutor book list | 列出工作区中的所有书籍 |
deeptutor book health | 检查知识库漂移和书籍健康状态 |
deeptutor book refresh-fingerprints | 刷新知识库指纹并清除过期页面 |
deeptutor config / plugin / provider
| 命令 | 描述 |
|---|---|
deeptutor config show | 打印当前配置摘要 |
deeptutor plugin list | 列出已注册的工具和功能 |
deeptutor plugin info | 显示工具或功能详情 |
deeptutor provider login | 提供商认证(openai-codex OAuth 登录;github-copilot 验证现有 Copilot 认证会话) |
启用认证后,DeepTutor 会转变为多租户部署,具备用户隔离工作区和管理员管理的资源。首位注册用户将成为管理员,代表所有用户配置模型、API 密钥和知识库。后续账户需由管理员创建(仅邀请制),每个账户拥有独立的聊天历史、记忆、笔记本和知识库,且只能看到管理员分配的 LLM、知识库和技能。
快速开始(5 步):
# 1. 在 data/user/settings/auth.json 中启用认证:
# {"enabled": true, "token_expire_hours": 24, "cookie_secure": false}
# 对于 Web 与 API 跨域的 HTTPS 部署,使用 cookie_secure=true。
# 2. 重启 Web 服务栈。
deeptutor start
# 3. 打开 http://localhost:3782/register 并创建首个账户。
# 首次注册是唯一公开注册;该用户将成为管理员,
# 之后 /register 端点会自动关闭。
# 4. 以管理员身份导航至 /admin/users → "添加用户" 来配置团队成员。
# 5. 对于每个用户,点击滑块图标 → 分配 LLM 配置文件、知识库和技能。保存后,用户即可登录开始使用。
管理员可见内容:
/settings)— 管理 LLM/嵌入/搜索提供商、API 密钥、模型目录及运行时“应用”操作。/admin/users)— 创建、提升、降级和删除账户。首个管理员创建后,公开 /register 端点自动关闭;后续账户需通过 POST /api/v1/auth/users(仅管理员)创建。multi-user/_system/audit/usage.jsonl。普通用户权限:
multi-user/<user_id>/ 下)— 包含个人聊天历史(chat_history.db)、记忆(SUMMARY.md/PROFILE.md)、笔记本和个人知识库。默认无共享内容。工作区布局:
multi-user/
├── _system/
│ ├── auth/users.json # 哈希凭证、角色
│ ├── auth/auth_secret # JWT 签名密钥(自动生成)
│ ├── grants/<user_id>.json # 每用户资源权限(管理员管理)
│ └── audit/usage.jsonl # 审计跟踪
└── <user_id>/
├── user/
│ ├── chat_history.db
│ ├── settings/interface.json
│ └── workspace/{chat,co-writer,book,...}
├── memory/{SUMMARY.md,PROFILE.md}
└── knowledge_bases/...
配置参考:
| 设置 | 是否必需 | 描述 |
|---|---|---|
data/user/settings/auth.json: enabled | 是 | 设置为 true 启用多用户认证。默认 false(单用户模式 — 所有路径均为管理员权限)。 |
multi-user/_system/auth/auth_secret | 推荐 | JWT 签名密钥。首次认证启动时若缺失会自动生成。 |
data/user/settings/auth.json: token_expire_hours | 否 | JWT 有效期;默认 24。 |
data/user/settings/auth.json: cookie_secure | HTTPS/跨域认证 | 对于需要 SameSite=None cookie 的 HTTPS 部署,设为 true。本地 HTTP 保持 false。 |
data/user/settings/auth.json: username/password_hash | 否 | 可选的无头单用户引导凭证。使用浏览器注册时留空。 |
data/user/settings/system.json | 否 | deeptutor start 从运行时设置推导前端认证标志、公共 API 基础和 CORS 源。 |
[!WARNING] PocketBase 模式(设置
integrations.pocketbase_url)仅支持单用户。 默认 PocketBase 架构的users表无role字段(所有登录用户角色均为user,无法创建管理员),且sessions/messages/turns查询不按user_id过滤。多用户部署必须保持integrations.pocketbase_url为空,使用默认 JSON/SQLite 后端。
来自真实用户的反馈,见证轩辕镜像的优质服务