# KB Workflow 环境安装脚本 一键检查并安装 kb-workflow 知识库工作流所需的全部环境依赖。 ## 功能特性 - ✅ 自动检测系统类型 (Ubuntu/Debian/Fedora/Arch) - ✅ 检查系统依赖 (Python3, pip3, ffmpeg, tesseract, git) - ✅ 检查 Python 依赖包 (httpx, aiohttp, playwright, easyocr 等) - ✅ 自动创建知识库目录结构 - ✅ 生成环境变量配置示例 - ✅ 汇总显示所有需要执行的安装命令 ## 使用方法 ### 运行检查脚本 ```bash cd /home/starmen1265/.openclaw/workspace/skills ./install-kb-workflow.sh ``` 脚本会检查所有依赖,并显示需要执行的安装命令。 ### 示例输出 ``` ======================================== 第一步: 检查系统依赖 ======================================== [SUCCESS] Python3 已安装: Python 3.12.3 [WARN] pip3 未安装 [WARN] ffmpeg 未安装 ... ======================================== 需要安装的系统依赖 ======================================== 检测到以下依赖未安装: - python3-pip - ffmpeg - tesseract-ocr ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 请运行以下命令安装: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ sudo apt-get update sudo apt-get install -y python3-pip ffmpeg tesseract-ocr tesseract-ocr-chi-sim tesseract-ocr-eng ``` ## 依赖清单 ### 系统依赖 | 依赖 | 用途 | 安装命令 | |------|------|----------| | **python3** | Python 运行时 | `sudo apt-get install python3` | | **python3-pip** | Python 包管理器 | `sudo apt-get install python3-pip` | | **ffmpeg** | 视频处理(OCR 截帧) | `sudo apt-get install ffmpeg` | | **tesseract-ocr** | OCR 引擎(备用方案) | `sudo apt-get install tesseract-ocr` | | **git** | 版本控制(归档提交) | `sudo apt-get install git` | ### Tesseract 语言包 ```bash # Ubuntu/Debian sudo apt-get install tesseract-ocr-chi-sim tesseract-ocr-chi-tra tesseract-ocr-eng # Fedora/RHEL sudo dnf install tesseract-langpack-chi_sim tesseract-langpack-chi_tra tesseract-langpack-eng ``` ### Python 依赖 ```bash # 基础 HTTP 库 pip3 install --user httpx aiohttp requests # 图像和 OCR pip3 install --user Pillow easyocr pytesseract # 浏览器自动化 pip3 install --user playwright python3 -m playwright install chromium ``` ## 目录结构 安装完成后会创建以下目录结构: ``` ~/work/knowledge-base/ # 知识库根目录(可配置) ├── archive/ # 归档目录 │ ├── pending/ # 待处理 │ └── subscriptions/ # 订阅信息 ├── metadata/ # 元数据文件 ├── content/ # 内容文件 │ ├── downloads/ # 视频下载 │ └── subtitles/ # 字幕文件 └── analyzed/ # 深度分析报告 ``` ## 环境变量 ### 必需 - `KB_BASE_PATH` - 知识库根目录(默认: `~/work/knowledge-base`) ### 可选 - `BILIBILI_COOKIE` - B站 Cookie,用于下载会员视频 - `AI_API_KEY` - AI API 密钥,用于深度内容分析 - `AI_PROVIDER` - AI 提供商(openai/zhipu/minimax) - `AI_MODEL` - AI 模型名称(如 gpt-4) - `AI_BASE_URL` - 自定义 API 端点 - `KB_GIT_USER` - Git 用户名(用于归档提交) - `KB_GIT_EMAIL` - Git 邮箱(用于归档提交) - `KB_GIT_REMOTE` - Git 远程仓库地址 ### 配置方法 将以下内容添加到 `~/.bashrc` 或 `~/.zshrc`: ```bash # KB Workflow 配置 export KB_BASE_PATH="~/work/knowledge-base" # 可选:B站 Cookie export BILIBILI_COOKIE="SESSDATA=xxx; bili_jct=xxx" # 可选:AI 配置 export AI_API_KEY="your-api-key" export AI_PROVIDER="openai" export AI_MODEL="gpt-4" ``` 然后重新加载配置: ```bash source ~/.bashrc # 或 source ~/.zshrc ``` ## 故障排除 ### 1. pip3 命令不存在 ```bash # 方法 1: 安装 pip3 sudo apt-get install python3-pip # 方法 2: 使用 python3 -m pip python3 -m pip install --user ``` ### 2. Playwright 浏览器安装失败 ```bash # 手动安装 Chromium python3 -m playwright install chromium # 如果仍然失败,尝试安装依赖 sudo apt-get install libnss3 libatk-bridge2.0-0 libxss1 libgtk-3-0 ``` ### 3. EasyOCR 安装失败 EasyOCR 依赖 PyTorch,可能需要较长时间安装: ```bash # 先安装 PyTorch pip3 install --user torch torchvision --index-url https://download.pytorch.org/whl/cpu # 再安装 easyocr pip3 install --user easyocr ``` ### 4. 权限问题 如果使用 `--user` 安装的包无法找到,检查 PATH: ```bash # 查看用户安装路径 python3 -m site --user-base # 添加到 PATH(添加到 ~/.bashrc) export PATH="$PATH:$(python3 -m site --user-base)/bin" ``` ### 5. OCR 中文识别问题 确保已安装中文语言包: ```bash # 检查已安装的语言包 tesseract --list-langs # 应该能看到 chi_sim 和 chi_tra ``` ## 更新 如果技能更新了依赖,可以重新运行检查脚本: ```bash ./install-kb-workflow.sh ``` ## 子技能清单 | 技能 | 路径 | 功能 | |------|------|------| | kb-workflow | `kb-workflow/kb_workflow.py` | 主流程协调 | | kb-link-parser | `kb-link-parser/link-parser.py` | 链接解析 | | kb-bilibili-metadata | `kb-bilibili-metadata/bilibili_metadata.py` | B站元数据提取 | | kb-bilibili-content | `kb-bilibili-content/bilibili_content.py` | B站内容下载 | | kb-ocr-processor | `kb-ocr-processor/ocr_processor.py` | 视频 OCR 识别 | | kb-deep-analyzer | `kb-deep-analyzer/deep_analyzer.py` | AI 深度分析 | ## 使用 kb-workflow 安装完成后,可以通过以下方式使用: ### 方式 1:通过主代理 直接向主代理发送消息: ``` 添加到知识库 https://www.bilibili.com/video/BVxxxxx ``` ### 方式 2:手动运行子技能 ```bash # 1. 链接解析 python3 kb-link-parser/link-parser.py --url "https://www.bilibili.com/video/BVxxxxx" # 2. 元数据提取 python3 kb-bilibili-metadata/bilibili_metadata.py --id "BVxxxxx" --type video # 3. 内容下载 python3 kb-bilibili-content/bilibili_content.py --id "BVxxxxx" --type subtitle # 4. 深度分析 python3 kb-deep-analyzer/deep_analyzer.py --metadata meta.json --content content.json --output analysis.md ``` ## 许可证 MIT License