huangjianwu 2bb69d1581 fix(backend): 部署友好性——whisper 半成品目录与 deploy_status 硬依赖 torch
两处部署反馈来的问题:

1. WhisperTranscriber 反复抛 'Unable to open file model.bin in
   model whisper-base'
   · 原因:__init__ 只看目录是否存在判定模型已下载(Path(model_path).exists()),
     但首次下载若中断 / 网络异常会留下空 / 半成品目录,下次启动绕过下载分支直接
     进 WhisperModel 加载,于是死循环报错
   · 修:判定条件换成 'model.bin' 落盘存在;目录在但 model.bin 缺失时打 warn
     并触发重新下载
   · routers/config.py 的 _check_whisper_model_exists 同步改用 model.bin 判定,
     避免「已下载」状态在监控页误报

2. /api/deploy_status 在没装 torch 的部署上 500
     ModuleNotFoundError: No module named 'torch'
   · 原因:endpoint 顶部直接 import torch,仅 fast-whisper 才用得到的依赖被强制为
     全局必需。轻量部署 / 用户切到 Groq / 必剪 / 快手 在线引擎时无 torch 也合理
   · 修:torch 改为 try/except,未装或 cuda 检测异常时返回
     {available: false, torch_installed: false};同时把 transcriber 配置 +
     ffmpeg 都包在 try 里,保证整个监控 endpoint 不会被任一子项打死

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 13:57:34 +08:00

BiliNote Banner

BiliNote v2.1.4

AI 视频笔记生成工具 让 AI 为你的视频做笔记

项目简介

BiliNote 是一个开源的 AI 视频笔记助手支持通过哔哩哔哩、YouTube、抖音等视频链接自动提取内容并生成结构清晰、重点明确的 Markdown 格式笔记。支持插入截图、原片跳转、AI 问答等功能。

📝 使用文档

详细文档可以查看这里

体验地址

可以通过访问 这里 进行体验,速度略慢,不支持长视频。

📦 桌面版下载

本项目提供了 Windows 和 macOS 桌面客户端,可在 Releases 页面下载最新版本。

Windows 用户请注意:一定要在没有中文路径的环境下运行。

🔧 功能特性

  • 支持多平台Bilibili、YouTube、本地视频、抖音、快手
  • 支持返回笔记格式选择
  • 支持笔记风格选择
  • 支持多模态视频理解
  • 支持多版本记录保留
  • 支持自行配置 GPT 大模型OpenAI、DeepSeek、Qwen 等)
  • 本地模型音频转写(支持 Fast-Whisper、MLX-Whisper、Groq、BCut
  • GPT 大模型总结视频内容
  • 自动生成结构化 Markdown 笔记
  • 可选插入截图(自动截取)
  • 可选内容跳转链接(关联原视频)
  • 任务记录与历史回看
  • 基于 RAG 的笔记内容 AI 问答(支持 Function Calling
  • 笔记顶部视频封面 Banner 展示
  • 工作区和生成历史面板支持折叠/展开

v2.1.4 修订

  • CI桌面端 Tauri 构建去掉 Linux17m+ 慢线退役Linux 用户继续走 Docker 镜像)
  • CIcommitlint workflow 修复 + 规范 release merge commit 标题约定

v2.1.3 修订

  • 修复 DeepSeek 等非多模态供应商被 400 拒绝的问题issue #282UniversalGPT 的 message builder 按是否带图切换 string / 多模态数组形态
  • 感谢 @voidborne-d (#345)

v2.1.2 修订

  • 修复 v2.1.1 触发的 ghcr.io Docker 镜像构建失败Node 18 + Tailwind v4 不兼容、缺 lockfile
  • README 补上微信群二维码

v2.1.1 修订

  • 工程化与文档收尾CONTRIBUTING.md / RELEASING.md / issue + PR 模板 / commitlint CI / 插件发版工作流
  • 关于页群聊二维码:换成最新版,改为 import 本地资源,不再依赖 CDN
  • 关于页移除 QQ 群入口(仅保留微信群)
  • 详见 CHANGELOG.md

v2.1.0 新增

  • 浏览器插件Chrome / Edge / Firefox MV3—— 工具栏 popup、视频页悬浮按钮、右键菜单、侧边栏Markdown / 思维导图 / AI 问答)四件套
  • 插件设置页五大块:模型供应商 CRUD、音频转写配置、下载配置含浏览器 Cookie 一键同步)、部署监控
  • B 站字幕优先:插件在用户浏览器里直接抓字幕(带本地登录态 cookie跳过后端音频转写
  • 后端 BilibiliSubtitleFetcher:非插件场景下走 player API 拿字幕,作为 yt-dlp 兜底
  • mlx-whisper 仓库 ID 修正(修复模型 404
  • 后端 CORS 改用 regex兼容浏览器扩展源
  • 详见 CHANGELOG.md

v2.0.0 新增

  • 基于 RAG 的笔记内容 AI 问答功能,支持半屏/全屏模式
  • AI 问答支持 Function Calling模型可主动查询原文数据
  • RAG 索引支持视频元信息(标题、作者、简介、标签等)
  • AI 回复支持 Markdown 渲染
  • 笔记顶部新增视频封面 Banner
  • 工作区和生成历史面板支持折叠/展开
  • 笔记开头添加来源链接功能
  • YouTube 字幕优先获取,有字幕时跳过音频下载
  • 性能优化与转写器配置改进

📸 截图预览

screenshot screenshot screenshot screenshot screenshot

🚀 快速开始

方式一Docker 部署(推荐)

确保已安装 Docker直接拉取预构建镜像运行

docker pull ghcr.io/jefferyhcool/bilinote:latest

docker run -d -p 80:80 \
  -v bilinote-data:/app/backend/data \
  --name bilinote \
  ghcr.io/jefferyhcool/bilinote:latest

访问:http://localhost

也可以使用 docker-compose 本地构建:

# 标准部署
docker-compose up -d

# GPU 加速部署(需要 NVIDIA GPU
docker-compose -f docker-compose.gpu.yml up -d

方式二:源码部署

1. 克隆仓库

git clone https://github.com/JefferyHcool/BiliNote.git
cd BiliNote
mv .env.example .env

2. 启动后端FastAPI

cd backend
pip install -r requirements.txt
python main.py

3. 启动前端Vite + React

cd BillNote_frontend
pnpm install
pnpm dev

访问:http://localhost:3015

⚙️ 依赖说明

🎬 FFmpeg

本项目依赖 ffmpeg 用于音频处理与转码,源码部署时必须安装:

# Mac (brew)
brew install ffmpeg

# Ubuntu / Debian
sudo apt install ffmpeg

# Windows
# 请从官网下载安装https://ffmpeg.org/download.html

⚠️ 若系统无法识别 ffmpeg请将其加入系统环境变量 PATH

Docker 部署已内置 FFmpeg无需额外安装。

🚀 CUDA 加速(可选)

若你希望更快地执行音频转写任务,可使用具备 NVIDIA GPU 的机器,并启用 fast-whisper + CUDA 加速版本:

具体 fast-whisper 配置方法,请参考:fast-whisper 项目地址

🐳 使用 Docker 一键部署

确保你已安装 Docker然后直接拉取预构建镜像运行

# 拉取最新镜像
docker pull ghcr.io/jefferyhcool/bilinote:latest

# 运行容器
docker run -d -p 80:80 \
  -v bilinote-data:/app/backend/data \
  --name bilinote \
  ghcr.io/jefferyhcool/bilinote:latest

访问:http://localhost

也可以使用 docker-compose 本地构建:

# 标准部署
docker-compose up -d

# GPU 加速部署(需要 NVIDIA GPU
docker-compose -f docker-compose.gpu.yml up -d

🧠 TODO

  • 支持抖音及快手等视频平台
  • 支持前端设置切换 AI 模型切换、语音转文字模型
  • AI 摘要风格自定义(学术风、口语风、重点提取等)
  • 加入更多模型支持
  • 加入更多音频转文本模型支持
  • 基于 RAG 的笔记内容 AI 问答
  • 笔记导出为 PDF / Word / Notion

Contact and Join-联系和加入社区

扫码加入 BiliNote 交流微信群(如二维码失效,请到 Issues 反馈):

BiliNote 交流微信群

🔎代码参考

📜 License

MIT License


💬 你的支持与反馈是我持续优化的动力!欢迎 PR、提 issue、Star

Buy Me a Coffee / 捐赠

如果你觉得项目对你有帮助,考虑支持我一下吧

Star History

Star History Chart

Description
AI 视频笔记生成工具 让 AI 为你的视频做笔记
Readme MIT 60 MiB
Languages
TypeScript 43.6%
Python 42.8%
Vue 9%
Rust 2%
CSS 1.3%
Other 1.3%