Knowledge Base Skill

👤 wwl52 📦 v2.1.1 ⭐ 4.5 ⬇️ 967 下載
📚 知識管理 免費

📖 技能介紹


name: knowledge-base-skill version: 2.1.1 description: Multi-business knowledge base with image attachment + OCR support. Manage Q&A databases by business type, auto page splitting, and intelligent search. metadata: { "openclaw": { "requires": { "bins": ["python3"], "optional": ["tesseract-ocr", "pytesseract", "pillow"] }, "install": [], "files": [ "knowledge-base/kb-manager.py", "knowledge-base/image-manager.py", "knowledge-base/kb-image.sh", ], }, }


Knowledge Base Skill - 多業務知識庫管理(支援圖片 + OCR)

📖 功能概述

支援按業務型別分隔的問答知識庫系統,每個業務獨立儲存、獨立查詢,自動分頁,支援圖片附件 + OCR 文字提取

核心特性

特性 說明
🏢 多業務支援 客服、產品、技術等獨立資料庫
📄 自動分頁 單檔案達 500MB 自動建立新頁
📸 圖片附件 儲存截圖,自動 OCR 提取文字
🔍 智慧搜尋 匹配問題文本 + 圖片 OCR 文字
待回答管理 記錄未回答問題,定期提醒
📊 統計分析 業務統計、圖片統計
📤 匯出功能 一鍵匯出 Markdown 文件

🎯 觸發詞

當用戶提到以下關鍵詞時,進入知識庫操作模式:

  • 我想操作知識庫
  • 我想操作業務知識庫
  • 知識庫
  • knowledge base
  • KB
  • 新增一個問題
  • 查詢知識庫

🚀 互動流程

方式一:快捷命令(強烈推薦 ⭐)

使用者直接使用快捷格式,無需多輪對話:

KB:<業務名> Q:<問題> A:<答案>              # 純文字問答
KB:<業務名> Q:<問題> A:<答案> IMG:<路徑>   # 帶圖片問答
KB:<業務名> <問題>                         # 查詢問題
KB:<業務名> list                           # 檢視統計
KB:list                                    # 列出所有業務
KB:img list [業務名]                       # 列出圖片
KB:img stats                               # 圖片統計

示例:

KB:客服 Q:如何退款 A:7 天內無理由退款
KB:技術 Q:登入報 502 錯誤 A: 檢查 Nginx 配置 IMG:/tmp/error.png
KB:客服 退款流程是什麼
KB:技術 list
KB:list

方式二:對話模式

步驟 1:觸發知識庫操作

使用者: 我想操作知識庫我想操作業務知識庫

助理:

📚 已進入知識庫操作模式

當前業務:
1. 客服 (120 問答)
2. 產品 (85 問答)
3. 技術 (200 問答)

請告訴我業務型別,或:
- 輸入業務名稱(如"客服")
- 說"list"檢視所有
- 說"new 業務名"建立新業務
- 或直接用快捷格式:KB:業務 Q:問題 A:答案

步驟 2:選擇業務

使用者: 技術切換到技術知識庫

助理:

✅ 已選擇:技術知識庫

當前操作模式:
- 新增問答:Q: 問題 A: 答案 [IMG:圖片路徑]
- 查詢問題:直接傳送問題
- 檢視狀態:list
- 圖片管理:img list / img stats
- 切換業務:switch
- 退出:exit

當前業務:技術 | 已回答:200 條 | 待回答:5 條 | 圖片:15 張

步驟 3:執行操作

新增問答(純文字):

使用者:Q: API 地址是什麼 A: https://api.example.com
助理:✅ 問答已新增 (技術知識庫)

新增問答(帶圖片):

使用者:Q: 登入報 502 錯誤 A: 檢查 Nginx 配置 IMG:/tmp/error.png
助理:
📸 儲存圖片... ✅ 已儲存:error.png (256 KB)
🔍 提取 OCR 文字:502 Bad Gateway nginx/1.18.0
✅ 問答已新增 (技術知識庫)
📎 附件:1 張圖片

查詢問題:

使用者:502 錯誤怎麼辦
助理:
🔍 找到匹配答案(相似度 0.95):

Q: 登入報 502 錯誤
A: 檢查 Nginx 配置

📎 相關圖片:error.png
📝 圖片文字:502 Bad Gateway nginx/1.18.0

📋 命令格式詳解

快捷命令(推薦)

命令 說明 示例
KB:業務 Q:問題 A:答案 新增問答 KB:客服 Q:如何退款 A:7 天內可退款
KB:業務 Q:問題 A:答案 IMG:路徑 新增帶圖片問答 KB:技術 Q:502 錯誤 A: 檢查 Nginx IMG:/tmp/error.png
KB:業務 問題 查詢問題 KB:客服 退款流程
KB:業務 list 檢視業務統計 KB:技術 list
KB:list 列出所有業務 KB:list
KB:new 業務名 建立新業務 KB:new 財務
KB:export 業務名 匯出文件 KB:export 客服
KB:img list [業務] 列出圖片 KB:img list 技術
KB:img stats 圖片統計 KB:img stats

自然語言命令

使用者輸入 助理行為
我想在客服知識庫新增一個問題 提示使用者提供問題和答案
Q: 如何退款 A: 7 天內可退款 新增到當前業務知識庫
查詢產品知識庫中關於價格的問題 在產品知識庫中搜索
幫我建立一個 HR 知識庫 建立新業務
切換到技術知識庫 切換當前業務
匯出客服知識庫 匯出 Markdown 文件

🗂️ 目錄結構

knowledge-base/
├── kb-manager.py              # 知識庫核心管理器
├── image-manager.py           # 圖片管理器 + OCR
├── kb-image.sh                # 圖片命令列工具
├── businesses.json            # 業務索引
├── attachments/               # 圖片附件目錄
│   ├── 客服/
│   │   ├── a3f8b2c1.png
│   │   └── d9e4f5a6.jpg
│   ├── 產品/
│   └── 技術/
├── 客服/                      # 業務資料庫目錄
│   ├── qa-database.json
│   └── qa-database-page2.json
├── 產品/
└── 技術/

📸 圖片處理流程

1. 儲存圖片

# 自動儲存到 attachments/業務名/
# 生成唯一檔名:{hash}.{ext}
# 返回檔案資訊:路徑、大小、副檔名

2. OCR 提取文字

# 自動嘗試 OCR 引擎:
# 1. pytesseract (Python 庫)
# 2. tesseract 命令列
# 3. 其他 OCR 服務
# 返回提取的文字內容

3. 儲存到資料庫

{
  "question": "登入報 502 錯誤",
  "answer": "檢查 Nginx 配置",
  "attachments": [
    {
      "filename": "a3f8b2c1.png",
      "type": "image",
      "path": "attachments/技術/a3f8b2c1.png",
      "ocr_text": "502 Bad Gateway nginx/1.18.0"
    }
  ]
}

4. 搜尋時匹配

# 同時搜尋:
# 1. 問題文本相似度
# 2. 圖片 OCR 文字相似度
# 返回最佳匹配 + 圖片附件

🔍 搜尋策略

優先順序

  1. 當前業務搜尋 - 預設只在當前業務搜尋
  2. 跨業務搜尋 - 如果當前業務無匹配,詢問是否跨業務搜尋
  3. 圖片 OCR 搜尋 - 同時匹配圖片中的文字

相似度閾值

相似度 行為
≥ 0.9 直接返回,高置信度
0.7-0.9 返回並提示相似度
0.6-0.7 返回並建議確認
< 0.6 視為無匹配,建議新增新問答

搜尋結果格式

{
  "question": "登入報 502 錯誤",
  "answer": "檢查 Nginx 配置",
  "similarity": 0.95,
  "business": "技術",
  "page": 1,
  "attachments": [
    {
      "filename": "a3f8b2c1.png",
      "ocr_text": "502 Bad Gateway"
    }
  ]
}

⚙️ 配置選項

分頁大小

MAX_FILE_SIZE = 500 * 1024 * 1024  # 500MB

相似度閾值

DEFAULT_THRESHOLD = 0.6  # 預設匹配閾值

OCR 語言

# 支援的語言包
lang='chi_sim+eng'  # 簡體中文 + 英文

🛠️ 命令列工具

知識庫管理

cd knowledge-base

# 業務管理
python3 kb-manager.py business list              # 列出所有業務
python3 kb-manager.py business new 客服          # 建立新業務
python3 kb-manager.py business delete 客服       # 刪除業務

# 問答操作
python3 kb-manager.py add 客服 "如何退款" "7 天內可退款"
python3 kb-manager.py search 客服 "退款流程"
python3 kb-manager.py stats 客服                 # 詳細統計
python3 kb-manager.py export 客服                # 匯出文件

圖片管理

# 儲存圖片並新增問答
./kb-image.sh add 技術 "502 錯誤" "檢查 Nginx" "/tmp/error.png"

# OCR 提取
./kb-image.sh ocr "/tmp/screenshot.png"

# 列出圖片
./kb-image.sh list 技術

# 圖片統計
./kb-image.sh stats

📊 統計資訊

業務統計

KB:技術 list

輸出:

業務:技術
已回答:200 條
待回答:5 條
頁數:1 頁

圖片統計

KB:img stats

輸出:

{
  "total_images": 25,
  "total_size_mb": 12.5,
  "businesses": {
    "客服": {"images": 10, "size_kb": 5120},
    "技術": {"images": 8, "size_kb": 4096},
    "產品": {"images": 5, "size_kb": 2560}
  }
}

💡 最佳實踐

1. 業務命名

  • ✅ 簡潔:2-4 個字(客服、產品、技術)
  • ❌ 過長:客戶服務知識庫、產品資訊知識庫

2. 問題標準化

  • ✅ 包含關鍵詞:502 錯誤退款流程API 地址
  • ❌ 模糊表述:這個怎麼辦那個問題

3. 圖片處理

  • ✅ 清晰截圖,文字可讀
  • ✅ 有意義檔名:login-502-error.png
  • ✅ 大小 < 5MB
  • ❌ 敏感資訊未脫敏

4. 定期維護

  • 每週匯出備份:KB:export 業務名
  • 清理待回答問題
  • 檢查圖片統計

⚠️ 依賴安裝

必需

  • Python 3.x
  • 基礎 Python 庫(json, os, hashlib 等)

可選(推薦)

OCR 引擎 - 用於自動提取圖片文字:

# Python 庫
pip install pytesseract pillow

# 系統包(Ubuntu/Debian)
apt install tesseract-ocr tesseract-ocr-chi-sim tesseract-ocr-eng

# macOS
brew install tesseract tesseract-lang

檢查 OCR 狀態:

./kb-image.sh ocr /path/to/test.png

🎯 使用場景

場景 1:客服 FAQ

問題:新客服不知道如何處理各種客戶諮詢

解決: 1. 建立 客服 業務 2. 新增常見問題:KB:客服 Q:如何退款 A:7 天內可退款 3. 新客服查詢時自動回答

場景 2:技術支援(帶截圖)

問題:使用者傳送錯誤截圖諮詢,同樣問題重複出現

解決: 1. 儲存錯誤截圖:KB:技術 Q:502 錯誤 A: 檢查 Nginx IMG:/tmp/error.png 2. OCR 自動提取文字 3. 下次查詢時返回答案 + 截圖

場景 3:產品文件

問題:產品規格經常變更,文件更新不及時

解決: 1. 建立 產品 業務 2. 每次更新後新增:KB:產品 Q:iPhone 15 規格 A:...IMG:specs.png 3. 查詢時自動匹配最新規格


📖 相關文件


📝 版本歷史

  • v2.1 (2026-03-15) - 圖片附件支援、OCR 文字提取、圖片搜尋
  • v2.0 (2026-03-15) - 多業務支援、快捷命令格式
  • v1.0 (2026-03-15) - 初始版本

Skill 位置: skills/knowledge-base-skill/ 資料位置: knowledge-base/

🤖 AI 評測

這是一個功能豐富、設計用心的知識庫管理工具,支援多業務分類、圖片上傳和 OCR 文字識別,文件示例清晰、使用門檻低。優點是功能覆蓋全面、互動方式靈活,缺點是部分高階功能依賴外部軟體安裝,對新手可能有一定配置難度。總體質量良好,適合需要管理多類問答內容的使用者。

📊 多維度評分

適應性4.6
規範性4.2
有效性4.5
可靠性4.4
可信度5

📁 包含檔案 (5 個)

📄 SKILL.md 11.2 KB
📄 _meta.json 139 B
📄 knowledge-base/image-manager.py 9.3 KB
📄 knowledge-base/kb-image.sh 2.9 KB
📄 knowledge-base/kb-manager.py 21 KB