DeepTutor 知识库与 RAG 配置:文档导入、Embedding、记忆审计和备份

DeepTutor 知识库与 RAG 配置:文档导入、Embedding、记忆审计和备份,覆盖配置、验证、权限边界、故障回退和长期维护。

DeepTutor 的这个教程只处理标题中的具体任务。知识库质量取决于文档清洗、Embedding 一致性和引用回查;DeepTutor 的设置、日志、记忆与知识库默认落在工作区 data 目录,应把数据生命周期先设计清楚。

下面所有操作都先放在测试仓库、测试账号或仅回环监听的服务中。命令中的域名、用户名、路径与密钥是占位符,执行前需要替换。

先固定 DeepTutor 工作区位置

这一节解决的是“先固定 DeepTutor 工作区位置”。先记录当前状态,再执行最小动作,最后用独立证据确认结果。

对 DeepTutor 而言,判断依据是:知识库质量取决于文档清洗、Embedding 一致性和引用回查;DeepTutor 的设置、日志、记忆与知识库默认落在工作区 data 目录,应把数据生命周期先设计清楚。不要在这个阶段顺手打开更多权限。

1
$env:DEEPTUTOR_HOME='D:\deeptutor-data'

执行后保留命令输出和时间戳。若输出依赖当前终端里的临时变量,打开新终端复查一次。

模型和 Embedding 是两套配置

按下面顺序处理:

  1. 读取实际版本和当前配置。
  2. 只改变与本节相关的一项设置。
  3. 运行一个只读或可撤销的请求。
  4. 检查日志、退出码和最终文件。
  5. 失败时恢复刚才那一项修改。
1
deeptutor init

这里的完成标准不是界面出现,而是“模型和 Embedding 是两套配置”有可重复结果。

导入前清理 PDF 与 Markdown

要检查的内容 合格表现 需要停止的信号
导入前清理 PDF 与 Markdown 输入和输出范围明确 自动扩大到其他项目或账号
权限 只获得完成任务所需权限 要求管理员权限或完整密钥
日志 能定位失败且已经脱敏 出现 Token、Cookie 或私有正文
回退 能恢复上一步状态 修改不可逆且没有备份
1
Get-ChildItem -Recurse .\documents

表格中的停止信号一旦出现,先撤销本节改动,不要继续后面的自动化。

按主题拆分知识库而不是全部混入

围绕“按主题拆分知识库而不是全部混入”准备一个成功样本和一个失败样本。成功样本验证正常路径,失败样本验证限制是否真的生效。

1
deeptutor start

建议记录以下四项:

  • 执行前的版本或 Git 提交。
  • 实际输入,不记录秘密值。
  • 可观察的输出、状态码或 diff。
  • 恢复动作以及恢复后的复查结果。

如果失败原因仍不清楚,每次只修改一个变量;不要同时换端口、运行时、Provider 和代理。

首次索引后做三类检索测试

这一节解决的是“首次索引后做三类检索测试”。先记录当前状态,再执行最小动作,最后用独立证据确认结果。

对 DeepTutor 而言,判断依据是:知识库质量取决于文档清洗、Embedding 一致性和引用回查;DeepTutor 的设置、日志、记忆与知识库默认落在工作区 data 目录,应把数据生命周期先设计清楚。不要在这个阶段顺手打开更多权限。

1
curl.exe http://127.0.0.1:3782

执行后保留命令输出和时间戳。若输出依赖当前终端里的临时变量,打开新终端复查一次。

回答必须显示可回查的证据

按下面顺序处理:

  1. 读取实际版本和当前配置。
  2. 只改变与本节相关的一项设置。
  3. 运行一个只读或可撤销的请求。
  4. 检查日志、退出码和最终文件。
  5. 失败时恢复刚才那一项修改。
1
deeptutor start

这里的完成标准不是界面出现,而是“回答必须显示可回查的证据”有可重复结果。

L1、L2、L3 记忆分别检查什么

要检查的内容 合格表现 需要停止的信号
L1、L2、L3 记忆分别检查什么 输入和输出范围明确 自动扩大到其他项目或账号
权限 只获得完成任务所需权限 要求管理员权限或完整密钥
日志 能定位失败且已经脱敏 出现 Token、Cookie 或私有正文
回退 能恢复上一步状态 修改不可逆且没有备份
1
Get-ChildItem -Recurse $env:DEEPTUTOR_HOME

表格中的停止信号一旦出现,先撤销本节改动,不要继续后面的自动化。

纠正错误记忆而不是继续追加

围绕“纠正错误记忆而不是继续追加”准备一个成功样本和一个失败样本。成功样本验证正常路径,失败样本验证限制是否真的生效。

1
Get-ChildItem -Recurse $env:DEEPTUTOR_HOME | Sort-Object LastWriteTime -Descending | Select-Object -First 20

建议记录以下四项:

  • 执行前的版本或 Git 提交。
  • 实际输入,不记录秘密值。
  • 可观察的输出、状态码或 diff。
  • 恢复动作以及恢复后的复查结果。

如果失败原因仍不清楚,每次只修改一个变量;不要同时换端口、运行时、Provider 和代理。

Docker 卷中实际保存哪些数据

这一节解决的是“Docker 卷中实际保存哪些数据”。先记录当前状态,再执行最小动作,最后用独立证据确认结果。

对 DeepTutor 而言,判断依据是:知识库质量取决于文档清洗、Embedding 一致性和引用回查;DeepTutor 的设置、日志、记忆与知识库默认落在工作区 data 目录,应把数据生命周期先设计清楚。不要在这个阶段顺手打开更多权限。

1
docker volume inspect deeptutor-data

执行后保留命令输出和时间戳。若输出依赖当前终端里的临时变量,打开新终端复查一次。

更换 Embedding 模型为何要重建

按下面顺序处理:

  1. 读取实际版本和当前配置。
  2. 只改变与本节相关的一项设置。
  3. 运行一个只读或可撤销的请求。
  4. 检查日志、退出码和最终文件。
  5. 失败时恢复刚才那一项修改。
1
docker stop deeptutor

这里的完成标准不是界面出现,而是“更换 Embedding 模型为何要重建”有可重复结果。

备份与恢复一次完整知识库

要检查的内容 合格表现 需要停止的信号
备份与恢复一次完整知识库 输入和输出范围明确 自动扩大到其他项目或账号
权限 只获得完成任务所需权限 要求管理员权限或完整密钥
日志 能定位失败且已经脱敏 出现 Token、Cookie 或私有正文
回退 能恢复上一步状态 修改不可逆且没有备份
1
docker run --rm -v deeptutor-data:/data -v ${PWD}:/backup alpine tar czf /backup/deeptutor-data.tgz -C /data .

表格中的停止信号一旦出现,先撤销本节改动,不要继续后面的自动化。

长期维护的抽样评估方法

围绕“长期维护的抽样评估方法”准备一个成功样本和一个失败样本。成功样本验证正常路径,失败样本验证限制是否真的生效。

1
deeptutor start

建议记录以下四项:

  • 执行前的版本或 Git 提交。
  • 实际输入,不记录秘密值。
  • 可观察的输出、状态码或 diff。
  • 恢复动作以及恢复后的复查结果。

如果失败原因仍不清楚,每次只修改一个变量;不要同时换端口、运行时、Provider 和代理。

扫描件 OCR 错误如何影响检索

这一节解决的是“扫描件 OCR 错误如何影响检索”。先记录当前状态,再执行最小动作,最后用独立证据确认结果。

对 DeepTutor 而言,判断依据是:知识库质量取决于文档清洗、Embedding 一致性和引用回查;DeepTutor 的设置、日志、记忆与知识库默认落在工作区 data 目录,应把数据生命周期先设计清楚。不要在这个阶段顺手打开更多权限。

1
Get-ChildItem -Recurse .\documents

执行后保留命令输出和时间戳。若输出依赖当前终端里的临时变量,打开新终端复查一次。

中英文资料是否共用 Embedding

按下面顺序处理:

  1. 读取实际版本和当前配置。
  2. 只改变与本节相关的一项设置。
  3. 运行一个只读或可撤销的请求。
  4. 检查日志、退出码和最终文件。
  5. 失败时恢复刚才那一项修改。
1
deeptutor init

这里的完成标准不是界面出现,而是“中英文资料是否共用 Embedding”有可重复结果。

删除文档后的索引残留

要检查的内容 合格表现 需要停止的信号
删除文档后的索引残留 输入和输出范围明确 自动扩大到其他项目或账号
权限 只获得完成任务所需权限 要求管理员权限或完整密钥
日志 能定位失败且已经脱敏 出现 Token、Cookie 或私有正文
回退 能恢复上一步状态 修改不可逆且没有备份
1
Get-ChildItem -Recurse $env:DEEPTUTOR_HOME

表格中的停止信号一旦出现,先撤销本节改动,不要继续后面的自动化。

恢复到全新的工作区

围绕“恢复到全新的工作区”准备一个成功样本和一个失败样本。成功样本验证正常路径,失败样本验证限制是否真的生效。

1
2
$env:DEEPTUTOR_HOME='D:\deeptutor-restore'
deeptutor start

建议记录以下四项:

  • 执行前的版本或 Git 提交。
  • 实际输入,不记录秘密值。
  • 可观察的输出、状态码或 diff。
  • 恢复动作以及恢复后的复查结果。

如果失败原因仍不清楚,每次只修改一个变量;不要同时换端口、运行时、Provider 和代理。

DeepTutor 常见问题

是否可以跳过测试环境,直接把 DeepTutor 用到正式项目?

不建议。至少先完成一次最小成功请求、一次故意失败和一次恢复演练。

DeepTutor 命令能运行但结果不对,先查哪里?

先查输入范围、实际生效的配置和上游响应,再查模型总结。进程正常不代表业务结果正确。

如何避免 DeepTutor 的密钥或令牌进入 Git?

使用系统环境变量、Secret 管理或项目外配置文件,并在提交前搜索 diff。发现泄露后必须轮换密钥。

升级 DeepTutor 时最容易漏掉什么?

最容易漏掉配置格式、默认监听地址、权限范围和缓存兼容性。升级前保存版本与验证样本。

DeepTutor 验收问题

完成后应能回答下面的问题:

  • 使用的是哪个确切版本?
  • 哪些目录、端口、账号和外部服务可被访问?
  • 成功结果如何回到原始数据或 Git diff?
  • 上游失败时会报错、重试还是切换?
  • 密钥是否可能出现在日志或历史记录?
  • 如何在十分钟内回到修改前状态?

如果其中任何一项无法回答,DeepTutor 仍处于试用状态,不应扩大权限或接入生产自动化。