Files
vrsub/README.md
T
cat-shark fc28f22a3f docs: 记录模型切换与过滤层决策,新增等待规则
- AGENTS.md:
  * LLM_MODEL 更新为 Qwen/Qwen3.5-35B-A3B,并说明 subtitle-correction
    节点有意保留旧模型(实测 0/4 vs 4/4);
  * llm-filter 节点表格改写:规则层为默认且唯一启用层级,列出新增的
    水印编号/日期/VLM 提示回显/角色标注规则,并记录 LLM 层关闭的
    数据依据(131 条额外删除中 56% 是真对话);
  * **新增「等待规则(强制,2026-09)」**:单次等待不得超过 10 秒,
    长任务放后台写日志并每 10 秒轮询;明确禁止 sleep 600 /
    timeout 1800 这类阻塞用户的写法(含反例说明)。
- README.md:同步默认模型、纠错节点例外、过滤层默认关闭;
- scripts/probe_llm_rate_limit.py 与 tests/test_integration_prompt_rules.py
  的兜底默认值同步为 Qwen/Qwen3.5-35B-A3B。
2026-09-13 10:15:50 +08:00

55 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# VRSub
为视频生成 **VR 双眼字幕**的单体应用:API、调度器与全部节点在同一进程内运行,
单仓库、单环境、单命令启动。由原分布式 WOV 多仓库合并而来,详细约定见
[AGENTS.md](./AGENTS.md)。
## 快速开始
```bash
uv sync
uv run uvicorn wov_app.main:app --reload
```
访问 `http://127.0.0.1:8000/` 上传视频,自动执行"提音 → 转写 → 翻译 → ASS"。
- 模型权重本地优先:把 whisper 模型放在 `model/faster-whisper-large-v3`
(含 `model.bin`)即可完全离线运行。
- LLM 翻译默认使用 SiliconFlow`Qwen/Qwen3.5-35B-A3B`),API Key 放在
gitignored 的 `.env``LLM_API_KEY=sk-...`),启动时自动加载;也可用
`LLM_API_BASE` / `LLM_MODEL` 环境变量覆盖。
- 默认模型切换为 `Qwen/Qwen3.5-35B-A3B`(2026-09):对同片 2 小时日语 ASR 做
8 个模型全量对比,该模型质量与旧默认 `Qwen/Qwen3.6-35B-A3B` 持平,
速度 0.232 s/行(全评测最快),评测报告见
`data/experiments/translate_models/REPORT.md`
- `subtitle-correction` 节点**不跟随**该默认值,有意保留
`Qwen/Qwen3.6-35B-A3B`:错听泛化实测新模型 0/4、旧模型 4/4。
- `llm-filter` 节点的 LLM 五类分类层**默认关闭**(`use_llm=0`):
实测该层额外删除的 131 条中 56% 是真实对话,净收益为负;
现只跑确定性规则层,误删真对话从 73 条降为 0 条且无 LLM 调用。
## 目录
| 路径 | 说明 |
| --- | --- |
| `src/wov_sdk/` | 协议数据模型(与分布式版兼容) |
| `src/wov_app/` | 应用层:API、注册表、调度器、数据库 |
| `nodes/` | 进程内节点实现(echo/ffmpeg/whisper/llm/ass |
| `manifests/` | 节点清单 JSON |
| `web/` | 静态前端 |
| `model/` | 本地模型权重(gitignored |
| `data/` | SQLite 与存储(gitignored |
| `tests/` | 测试(100% 行覆盖率) |
## 测试
```bash
uv run pytest
```
## 与分布式版的关系
- 协议数据模型、工作流 DAG 数据化、调度拓扑执行保持不变。
- 已移除:子进程节点、节点 HTTP 协议、节点注册/实例管理、TTL 回收。
- 未来回退分布式时,只需为 `registry.invoke` 重新加上进程边界。