## 🔧 Qwen-TTS Flash Attention 优化 (10:00) ### 优化背景 Qwen3-TTS 1.7B 模型在默认情况下加载速度慢,推理显存占用高。通过引入 Flash Attention 2,可以显著提升模型加载速度和推理效率。 ### 实施方案 在 `qwen-tts` Conda 环境中安装 `flash-attn`: ```bash conda activate qwen-tts pip install -U flash-attn --no-build-isolation ``` ### 验证结果 - **加载速度**: 从 ~60s 提升至 **8.9s** ⚡ - **显存占用**: 显著降低,消除 OOM 风险 - **代码变动**: 无代码变动,仅环境优化 (自动检测) ## 🛡️ 服务看门狗 Watchdog (10:30) ### 问题描述 常驻服务 (`vigent2-qwen-tts` 和 `vigent2-latentsync`) 可能会因显存碎片或长时间运行出现僵死 (Port open but unresponsive)。 ### 解决方案 开发了一个 Python Watchdog 脚本,每 30 秒轮询服务的 `/health` 接口,如果连续 3 次失败则自动重启服务。 1. **Watchdog 脚本**: `backend/scripts/watchdog.py` 2. **启动脚本**: `run_watchdog.sh` (基于 PM2) ### 核心逻辑 ```python # 连续 3 次心跳失败触发重启 if service["failures"] >= service['threshold']: subprocess.run(["pm2", "restart", service["name"]]) ``` ### 部署状态 - `vigent2-watchdog` 已启动并加入 PM2 列表 - 监控对象: `vigent2-qwen-tts` (8009), `vigent2-latentsync` (8007) --- ## ⚡ LatentSync 性能确认 经代码审计,LatentSync 1.6 已内置优化: - ✅ **Flash Attention**: 原生使用 `torch.nn.functional.scaled_dot_product_attention` - ✅ **DeepCache**: 已启用 (`cache_interval=3`),提供 ~2.5x 加速 - ✅ **GPU 并发**: 双卡流水线 (GPU0 TTS | GPU1 LipSync) 已确认工作正常 --- ## 🎨 交互体验与视图优化 (14:20) ### 主页优化 - 视频生成完成后,预览优先选中最新输出 - 选择项持久化:素材 / 背景音乐 / 历史作品 - 列表内滚动定位选中项,避免页面跳动 - 刷新回到顶部(首页) - 标题/字幕样式预览面板 - 背景音乐试听即选中并自动开启,音量滑块实时影响试听 ### 发布页优化 - 刷新回到顶部(发布页) --- ## 🎵 背景音乐链路修复 (15:00) ### 修复点 - FFmpeg 混音改为 `shell=False`,避免 `filter_complex` 被 shell 误解析 - `amix` 禁用归一化,避免配音音量被压低 ### 关键修改 `backend/app/services/video_service.py` --- ## 🗣️ 字幕断句修复 (15:20) ### 内容 - 字幕切分逻辑保留英文单词整体,避免中英混合被硬切 ### 涉及文件 - `backend/app/services/whisper_service.py` --- ## 🧱 资源库与样式能力接入 (15:40) ### 内容 - 字体库 / BGM 资源接入本地 assets - 新增样式配置文件(字幕/标题) - 新增资源 API 与静态挂载 `/assets` - Remotion 支持样式参数与字体加载 ### 涉及文件 - `backend/assets/fonts/` - `backend/assets/bgm/` - `backend/assets/styles/subtitle.json` - `backend/assets/styles/title.json` - `backend/app/services/assets_service.py` - `backend/app/api/assets.py` - `backend/app/main.py` - `backend/app/api/videos.py` - `backend/app/services/remotion_service.py` - `remotion/src/components/Subtitles.tsx` - `remotion/src/components/Title.tsx` - `remotion/src/Video.tsx` - `remotion/render.ts` - `frontend/src/app/page.tsx` - `frontend/next.config.ts` --- ## 🛠️ 运维调整 (16:10) ### 内容 - Watchdog 移除 LatentSync 监控,避免长推理误杀 - LatentSync PM2 增加内存重启阈值(运行时配置) --- ## 🎯 前端按钮图标统一 (16:40) ### 内容 - 首页与发布页按钮图标统一替换为 Lucide SVG - 交互按钮保持一致尺寸与对齐 ### 涉及文件 - `frontend/src/features/home/ui/` - `frontend/src/app/publish/page.tsx` --- ## 📝 文档更新 - [x] `Docs/QWEN3_TTS_DEPLOY.md`: 添加 Flash Attention 安装指南 - [x] `Docs/DEPLOY_MANUAL.md`: 添加 Watchdog 部署说明 - [x] `Docs/TASK_COMPLETE.md`: 更新进度至 100% (Day 16)