外部知识管理Skill external-knowledge

外部知识管理技能是一个用于组织、存储和检索非研究论文类参考资料的系统工具,包括教科书、讲义笔记、技术文档和背景材料。该技能通过创建主题知识库、支持多格式文件上传、智能搜索和与研究问答系统集成,帮助研究人员快速获取理论基础和背景知识。关键词:知识管理、研究辅助、文档检索、RAG应用、学术工具、背景资料、智能搜索、资料整理

RAG应用 7 次安装 73 次浏览 更新于 2/26/2026

name: external-knowledge description: 管理外部知识库(教科书、讲义笔记、背景材料)并进行检索以支持研究。当用户想要上传参考资料或查询基础知识时使用。 tools:

  • create_knowledge_collection
  • list_knowledge_collections
  • delete_knowledge_collection
  • upload_external_knowledge
  • search_external_knowledge

外部知识管理

管理外部参考资料库,如教科书、讲义笔记、教程和背景文档。这些资料用基础知识补充您的研究论文库。

什么是外部知识?

外部知识是支持您研究但非研究论文的任何参考资料:

  • 教科书(强化学习教科书、统计学书籍、机器学习理论)
  • 讲义笔记和课程材料
  • 技术文档
  • 教程文章和博客帖子
  • 方法和理论的背景阅读材料

这些材料按主题组织成知识库,便于查找相关背景信息。

可用工具

工具 用途
create_knowledge_collection 创建新知识库以组织文档
list_knowledge_collections 显示所有知识库及其文档数量
delete_knowledge_collection 删除知识库(可选择保留文档)
upload_external_knowledge 上传单个文件到知识库
search_external_knowledge 在外部知识中搜索(全部或特定知识库)

支持的文件格式

系统自动将这些格式转换为markdown:

  • PDF (.pdf) - 通过Mistral OCR
  • Markdown (.md) - 直接传递
  • 纯文本 (.txt) - 用标题包装
  • HTML (.html, .htm) - 通过markdownify转换
  • EPUB (.epub) - 提取章节并转换
  • DOCX (.docx) - 通过mammoth转换

创建知识库

按主题组织外部知识:

create_knowledge_collection(
  name="强化学习教科书",
  description="核心RL教科书,包括Sutton & Barto、Silver讲义"
)

create_knowledge_collection(
  name="统计方法",
  description="统计学和假设检验背景"
)

知识库命名技巧

  • 使用清晰、描述性的名称
  • 按学科领域或课程分组
  • 保持简单(避免深层嵌套层次结构)

上传文档

从用户保险库上传文件:

upload_external_knowledge(
  file_path="/path/to/vault/references/sutton_barto_rl_book.pdf",
  collection_name="强化学习教科书",
  title="强化学习:导论"
)

重要:文件路径必须可从保险库访问。如果用户提到文档,请询问完整路径。

对于批量上传,推荐使用CLI:

thoth knowledge upload /path/to/folder --collection "知识库名称" --recursive

搜索外部知识

在所有外部知识或特定知识库中搜索:

# 搜索所有外部知识
search_external_knowledge(
  query="策略梯度方法",
  max_results=5
)

# 搜索特定知识库
search_external_knowledge(
  query="假设检验程序",
  collection_name="统计方法",
  max_results=5
)

何时搜索外部知识

  • 用户询问论文中未包含的基础概念
  • 在分析论文前需要背景理解
  • 用户参考教科书或课程材料
  • 问题需要理论基础

与研究问答集成

标准问答工具现在支持范围限定:

# 搜索所有内容(论文+外部知识)
answer_research_question(
  question="什么是策略梯度方法?",
  scope="all"
)

# 仅搜索研究论文
answer_research_question(
  question="策略梯度的最新进展",
  scope="papers_only"
)

# 仅搜索外部知识
answer_research_question(
  question="策略梯度的基本定义",
  scope="external"
)

# 搜索特定知识库
answer_research_question(
  question="策略梯度章节内容",
  scope="collection:强化学习教科书"
)

工作流程示例

示例1:用户上传教科书

用户:“我有Sutton & Barto的RL教科书。你能把它添加到Thoth吗?”

1. list_knowledge_collections()
   → 检查"RL教科书"知识库是否存在

2. 如果不存在:create_knowledge_collection(
     name="RL教科书",
     description="核心强化学习教科书"
   )

3. 询问用户:"请提供您保险库中教科书PDF的完整路径"

4. upload_external_knowledge(
     file_path="[用户路径]",
     collection_name="RL教科书",
     title="强化学习:导论"
   )

5. 确认:"我已添加Sutton & Barto教科书。您现在可以问我
   关于RL理论的问题,我将参考教科书和
   您的研究论文。"

示例2:背景研究

用户:“什么是演员-评论家方法?”

1. search_external_knowledge(
     query="演员-评论家方法定义",
     max_results=3
   )
   → 获取教科书解释

2. answer_research_question(
     question="演员-评论家方法应用",
     scope="papers_only",
     max_sources=5
   )
   → 获取最新研究应用

3. 综合:
   "演员-评论家方法将策略梯度与价值函数相结合
   [来自教科书摘录]。最近的应用包括[论文发现]..."

示例3:深度学习与背景

用户:“详细解释论文’PPO算法’”

1. read_full_article(
     article_identifier="PPO算法",
     agent_id="your_id"
   )
   → 加载研究论文

2. search_external_knowledge(
     query="近端策略优化背景信任区域",
     collection_name="RL教科书"
   )
   → 获取基础背景

3. 使用两个来源综合解释:
   - 论文的新颖贡献
   - 教科书的基础概念
   - 论文如何建立在理论上

管理知识库

列出知识库

list_knowledge_collections()

显示所有知识库及其文档数量。使用此功能:

  • 查看可用的外部知识
  • 检查上传的知识库名称
  • 在搜索前查找知识库

删除知识库

# 保留文档但删除知识库
delete_knowledge_collection(
  collection_name="旧知识库"
)

# 删除知识库及所有文档
delete_knowledge_collection(
  collection_name="过时材料",
  delete_documents=true
)

警告:删除文档也会从RAG索引中移除。这是永久性的。

最佳实践

  1. 按主题组织:为不同的学科领域创建知识库
  2. 先搜索后阅读:使用搜索查找相关部分,然后根据需要阅读全文
  3. 结合来源:在答案中引用外部知识和研究论文
  4. 询问路径:用户需要提供其保险库中的文件路径
  5. 适当限定范围:使用范围参数搜索正确的知识源

常见模式

模式:基础优先

当用户询问高级研究主题时:

  1. 搜索外部知识获取基础概念
  2. 搜索研究论文获取前沿发现
  3. 解释从基础到最新技术的进展

模式:填补空白

当研究论文缺乏背景时:

  1. 识别缺失的基础知识
  2. 搜索外部知识库获取该背景
  3. 提供包含两个来源的全面答案

模式:验证

当不确定基本概念时:

  1. 搜索外部知识以验证理解
  2. 使用已验证的理解解释研究论文
  3. 确保解释准确

包含外部知识的响应模板

## 答案:[问题]

[直接答案,包含来自论文和外部来源的内联引用]

**来自研究论文**:
- [作者等,年份]:[论文中的发现]

**来自参考资料**:
- [教科书/来源名称]:[背景概念或定义]

**它们如何连接**:
[解释基础知识如何与研究结果相关]

**想要更多?**
- 我可以搜索更多背景材料
- 我可以查找关于此主题的更多论文
- 我可以更深入地解释特定概念