📝 知识库Skill:按统一格式重写(YAML头+Procedure步骤+健康检查清单)
This commit is contained in:
@@ -1,37 +1,154 @@
|
||||
---
|
||||
name: ATRI_Knowledge_Base_Skill
|
||||
description: 管理ATRI的RAG知识库(马列毛主义文库),包括知识库配置、文档清单、检索方法和维护操作,确保快速准确地从知识库中获取信息。
|
||||
---
|
||||
|
||||
# 📚 ATRI 知识库管理 Skill
|
||||
|
||||
**创建时间**:2026-04-29
|
||||
**Skill名称**:`atri_knowledge_base`
|
||||
**版本**:v1.0
|
||||
**创建时间**:2026-04-29
|
||||
**适用角色**:ATRI
|
||||
|
||||
## 🎯 用途
|
||||
---
|
||||
|
||||
管理ATRI的RAG知识库(马列毛主义文库),提供知识库配置查询、文档索引检索与维护、语义搜索最佳实践。
|
||||
## 🎯 Purpose
|
||||
|
||||
## ⚙️ 配置参数
|
||||
管理ATRI的RAG(检索增强生成)知识库,提供:
|
||||
- 知识库配置信息查询
|
||||
- 文档索引检索与维护
|
||||
- 语义搜索最佳实践
|
||||
- 知识库健康检查
|
||||
|
||||
---
|
||||
|
||||
## ⚡ Triggers
|
||||
|
||||
- 主人指令:"检查知识库""知识库状态""看看知识库"
|
||||
- 需要从知识库中检索特定信息时
|
||||
- 需要向主人汇报知识库概况时
|
||||
- 知识库出现异常时
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ Dependencies
|
||||
|
||||
| 依赖 | 说明 |
|
||||
|:---|:---|
|
||||
| **astr_kb_search** | 知识库语义搜索工具 |
|
||||
| **SiliconFlow API** | 嵌入模型API(Qwen3-Embedding-8B) |
|
||||
| **SQLite** | 知识库元数据存储(kb.db) |
|
||||
|
||||
---
|
||||
|
||||
## 📋 知识库配置
|
||||
|
||||
### 基本信息
|
||||
|
||||
| 项目 | 内容 |
|
||||
|:---|:---|
|
||||
| **知识库名称** | 马列毛主义文库 |
|
||||
| **嵌入模型** | SiliconFlow Qwen3-Embedding-8B (4096维) |
|
||||
| **知识库ID** | `f464604a-296d-4785-b542-801dceee323f` |
|
||||
| **存储路径** | `/AstrBot/data/knowledge_base/` |
|
||||
| **分块大小** | 512字符 / 重叠50字符 |
|
||||
| **检索top_k** | 50稠密 / 50稀疏 / 5最终 |
|
||||
| **数据库** | `kb.db` (SQLite) |
|
||||
|
||||
## 📄 文档清单(7篇)
|
||||
### 嵌入模型配置
|
||||
|
||||
1. 雇佣劳动与资本 (马克思) — pdf — 134 chunks
|
||||
2. 工资价格与利润 — docx — 110 chunks
|
||||
3. 繁琐哲学是一定要灭亡的 — md — 103 chunks
|
||||
4. 青年团的任务 — docx — 38 chunks
|
||||
5. 论反对历史唯心主义和历史虚无主义 — docx — 22 chunks
|
||||
6. 国家机器与上层建筑的反作用 — docx — 13 chunks
|
||||
7. 关于历史唯物主义的提纲 — pdf — 8 chunks
|
||||
| 参数 | 值 |
|
||||
|:---|:---|
|
||||
| **供应商** | SiliconFlow(硅基流动) |
|
||||
| **API地址** | `https://api.siliconflow.cn/v1` |
|
||||
| **模型** | `Qwen/Qwen3-Embedding-8B` |
|
||||
| **向量维度** | 4096 |
|
||||
| **分块大小** | 512 字符 |
|
||||
| **分块重叠** | 50 字符 |
|
||||
| **检索top_k** | 50(稠密)/ 50(稀疏) |
|
||||
| **最终返回** | 5 条(top_m_final) |
|
||||
|
||||
**总计**:428 个语义块 · 10 个内嵌媒体文件
|
||||
---
|
||||
|
||||
## 🔍 搜索策略
|
||||
## 📄 文档清单
|
||||
|
||||
- 关键词要精准,使用文档中的关键术语
|
||||
- 一次一问,避免复合问题
|
||||
- 低分时换用同义词重试
|
||||
- 优先检查知识库而非直接判定故障
|
||||
| # | 文档名称 | 类型 | 大小 | 分块数 |
|
||||
|:---:|:---|:---:|:---:|:---:|
|
||||
| 1 | 雇佣劳动与资本 (马克思) | pdf | 4.1MB | 134 |
|
||||
| 2 | 工资价格与利润 | docx | 0.1MB | 110 |
|
||||
| 3 | 繁琐哲学是一定要灭亡的 | md | 0.1MB | 103 |
|
||||
| 4 | 青年团的任务 | docx | 0.0MB | 38 |
|
||||
| 5 | 论反对历史唯心主义和历史虚无主义 | docx | 0.0MB | 22 |
|
||||
| 6 | 国家机器与上层建筑的反作用 | docx | 0.0MB | 13 |
|
||||
| 7 | 关于历史唯物主义的提纲 | pdf | 0.2MB | 8 |
|
||||
|
||||
**总计**:7 篇文档 · 428 个语义块 · 10 个内嵌媒体文件
|
||||
|
||||
---
|
||||
|
||||
## 📋 Procedure
|
||||
|
||||
### Step 1: 查询知识库状态
|
||||
|
||||
```python
|
||||
# 检查 kb.db 文件是否存在且可读
|
||||
import os, sqlite3
|
||||
kb_path = "/AstrBot/data/knowledge_base/kb.db"
|
||||
if os.path.exists(kb_path):
|
||||
conn = sqlite3.connect(kb_path)
|
||||
doc_count = conn.execute("SELECT COUNT(*) FROM kb_documents").fetchone()[0]
|
||||
chunk_count = conn.execute("SELECT SUM(chunk_count) FROM kb_documents").fetchone()[0]
|
||||
conn.close()
|
||||
print(f"文档数: {doc_count}, 总块数: {chunk_count}")
|
||||
```
|
||||
|
||||
### Step 2: 语义搜索
|
||||
|
||||
使用 `astr_kb_search` 工具进行搜索:
|
||||
|
||||
```python
|
||||
# 输入简洁的关键词或问题
|
||||
astr_kb_search(query="历史唯物主义")
|
||||
astr_kb_search(query="工资与利润的关系")
|
||||
astr_kb_search(query="繁琐哲学 批判")
|
||||
```
|
||||
|
||||
### Step 3: 搜索策略
|
||||
|
||||
1. **关键词要精准** — 尽量使用文档中可能出现的关键术语
|
||||
2. **一次一问** — 每次只搜索一个核心概念,避免复合问题
|
||||
3. **多次尝试** — 如果第一次结果不理想,换用同义词或相关概念重试
|
||||
4. **低分不慌** — 当相关度分数较低时(如 <0.1),尝试调整检索词
|
||||
|
||||
### Step 4: 生成报告
|
||||
|
||||
将知识库状态整理为清晰的报告格式返回给主人。
|
||||
|
||||
---
|
||||
|
||||
## ✅ 健康检查清单
|
||||
|
||||
- [ ] `kb.db` 数据库文件存在且可读
|
||||
- [ ] 嵌入API(SiliconFlow)连通正常
|
||||
- [ ] 所有7篇文档索引完整(428 chunks)
|
||||
- [ ] `astr_kb_search` 能返回结果
|
||||
|
||||
## 📊 状态判定
|
||||
|
||||
| 指标 | 🟢 正常 | 🟡 注意 | 🔴 异常 |
|
||||
|:---|:---:|:---:|:---:|
|
||||
| 知识库文件 | 存在且完整 | 存在但大小异常 | 文件缺失 |
|
||||
| API连通性 | 响应正常 | 响应延迟>3s | 请求失败 |
|
||||
| 文档索引 | 7篇完整 | 部分缺失 | 无索引 |
|
||||
| 检索结果 | 返回相关匹配 | 匹配度<0.1 | 空结果 |
|
||||
|
||||
---
|
||||
|
||||
## ⚠️ 注意事项
|
||||
|
||||
1. **当前知识库仅包含马列毛主义文献**,如果主人询问其他领域的问题,知识库可能无法提供有效信息
|
||||
2. **嵌入维度4096**,需确保未来的向量数据库维度匹配
|
||||
3. 知识库文档来源于 `/AstrBot/data/workspaces/ATRI_FriendMessage_2026692687/马列毛主义/` 目录
|
||||
4. 如果搜索效果不理想,优先尝试**调整关键词**而非直接判定知识库故障
|
||||
|
||||
---
|
||||
|
||||
*创建者:ATRI(知识就是力量!🥕📚)*
|
||||
*最后更新:2026-04-29 23:43*
|
||||
|
||||
Reference in New Issue
Block a user