4.6 KiB
4.6 KiB
name, description
| name | description |
|---|---|
| ATRI_Knowledge_Base_Skill | 管理ATRI的RAG知识库(支持多库并行),包括知识库配置、文档清单、检索方法和维护操作,确保快速准确地从知识库中获取信息。,包括知识库配置、文档清单、检索方法和维护操作,确保快速准确地从知识库中获取信息。 |
📚 ATRI 知识库管理 Skill
Skill名称:atri_knowledge_base
版本:v1.0
创建时间:2026-04-29
适用角色:ATRI
🎯 Purpose
管理ATRI的RAG(检索增强生成)知识库,提供:
- 知识库配置信息查询
- 文档索引检索与维护
- 语义搜索最佳实践
- 知识库健康检查
⚡ Triggers
- 主人指令:"检查知识库""知识库状态""看看知识库"
- 需要从知识库中检索特定信息时
- 需要向主人汇报知识库概况时
- 知识库出现异常时
🛠️ Dependencies
| 依赖 | 说明 |
|---|---|
| astr_kb_search | 知识库语义搜索工具 |
| SiliconFlow API | 嵌入模型API(Qwen3-Embedding-8B) |
| SQLite | 知识库元数据存储(kb.db) |
📋 知识库配置
基本信息
| 项目 | 内容 |
|---|---|
| 知识库名称 | 马列毛主义文库(首库) |
| 知识库ID | f464604a-296d-4785-b542-801dceee323f |
| 存储路径 | /AstrBot/data/knowledge_base/ |
| 数据库 | kb.db (SQLite) |
嵌入模型配置
| 参数 | 值 |
|---|---|
| 供应商 | SiliconFlow(硅基流动) |
| API地址 | https://api.siliconflow.cn/v1 |
| 模型 | Qwen/Qwen3-Embedding-8B |
| 向量维度 | 4096 |
| 分块大小 | 512 字符 |
| 分块重叠 | 50 字符 |
| 检索top_k | 50(稠密)/ 50(稀疏) |
| 最终返回 | 5 条(top_m_final) |
📄 文档清单
| # | 文档名称 | 类型 | 大小 | 分块数 |
|---|---|---|---|---|
| 1 | 雇佣劳动与资本 (马克思) | 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 | 关于历史唯物主义的提纲 | 0.2MB | 8 |
总计:7 篇文档 · 428 个语义块 · 10 个内嵌媒体文件
📋 Procedure
Step 1: 查询知识库状态
# 检查 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 工具进行搜索:
# 输入简洁的关键词或问题
astr_kb_search(query="历史唯物主义")
astr_kb_search(query="工资与利润的关系")
astr_kb_search(query="繁琐哲学 批判")
Step 3: 搜索策略
- 关键词要精准 — 尽量使用文档中可能出现的关键术语
- 一次一问 — 每次只搜索一个核心概念,避免复合问题
- 多次尝试 — 如果第一次结果不理想,换用同义词或相关概念重试
- 低分不慌 — 当相关度分数较低时(如 <0.1),尝试调整检索词
Step 4: 生成报告
将知识库状态整理为清晰的报告格式返回给主人。
✅ 健康检查清单
kb.db数据库文件存在且可读- 嵌入API(SiliconFlow)连通正常
- 所有7篇文档索引完整(428 chunks)
astr_kb_search能返回结果
📊 状态判定
| 指标 | 🟢 正常 | 🟡 注意 | 🔴 异常 |
|---|---|---|---|
| 知识库文件 | 存在且完整 | 存在但大小异常 | 文件缺失 |
| API连通性 | 响应正常 | 响应延迟>3s | 请求失败 |
| 文档索引 | 7篇完整 | 部分缺失 | 无索引 |
| 检索结果 | 返回相关匹配 | 匹配度<0.1 | 空结果 |
⚠️ 注意事项
- 目前首库为马列毛主义文库,主人可能还会添加其他知识库
- 嵌入维度4096,需确保未来的向量数据库维度匹配
- 知识库文档来源于
/AstrBot/data/workspaces/ATRI_FriendMessage_202669****/马列毛主义/目录 - 如果搜索效果不理想,优先尝试调整关键词而非直接判定知识库故障
创建者:ATRI(知识就是力量!🥕📚) 最后更新:2026-04-29 23:43