feat(gui): expose the streaming and debug options in the advanced page
These were command-line only. Add them to the settings dialog so the whole feature set is reachable without arguments: stream mode, window limit, segment limit, prefix-rollback token count, cold-start chunk count, max tokens per step, thread count, verbose logging and the model directory. The streaming group is grouped and greyed out for streaming-ONNX models, which only use the commit granularity. The backend fingerprint now includes them, so changing one restarts the recogniser; appearance changes still apply live. Also add a test-only --settings-tab so a specific page can be screenshotted. 设置「高级」页补上原来只有命令行才有的选项:流式策略/滑窗上限/单段最长/前缀回滚 token 数/冷启动 chunk 数/单段最多生成 token/线程数/详细日志/模型目录。流式那一组 单独成组,选了流式 ONNX 模型时置灰(它们只用「更新粒度」)。这些值纳入「后端指纹」, 改动会重启识别后端;外观类改动仍然即时生效。另加测试用 --settings-tab 以便给单个 页签截图。
This commit is contained in:
1 parent
d234b9658d
commit
6c04071bb5
8 files changed
+252
-25
No files matched your search
@@ -28,6 +28,7 @@
|
||||
|
||||
参数的选择与实测见 [docs/phase2-streaming.md](phase2-streaming.md)。
|
||||
**这些参数只影响 `llama` 后端**(Qwen3-ASR);`sherpa` 的流式模型只用到「提交粒度」一个参数。
|
||||
同一组参数在 GUI 的「高级 → 流式」里也有(选了流式 ONNX 模型时那一组会置灰)。
|
||||
|
||||
| 选项 | 默认 | 说明 |
|
||||
|---|---|---|
|
||||
@@ -84,6 +85,7 @@
|
||||
| `--screenshot <path>` | — | 启动后自动截图并退出;同时截折叠态与展开态(`-expanded.png`) |
|
||||
| `--screenshot-delay <sec>` | `6` | 截图前等待秒数 |
|
||||
| `--screenshot-settings <path>` | — | 打开设置对话框、截图后退出 |
|
||||
| `--settings-tab <tab>` | — | 截图设置对话框时先切到某个页签(`0`–`2` 或 `模型`/`显示`/`高级`) |
|
||||
| `--settings-autoclose <how>` | — | 自动操作设置对话框:`reject` / `close` / `accept` / `ok` / `apply`(`ok`/`apply` 是真的去点按钮) |
|
||||
| `--quit-after <sec>` | — | 运行若干秒后优雅退出(测退出路径) |
|
||||
|
||||
|
||||
+29
-3
@@ -47,8 +47,9 @@
|
||||
| 取消 | 放弃本次改动(已经用「应用」生效过的改动不会被回滚) |
|
||||
| 确定 | 应用并关闭 |
|
||||
|
||||
**哪些改动要重启识别后端?** 只有**模型 / 识别语言 / 采集设备**这三项变化时才会重建后端并重启转写;
|
||||
透明度、字号、行数、灰色尾部这类外观改动是即时生效的,不会打断正在进行的转写。
|
||||
**哪些改动要重启识别后端?** 只有**模型 / 识别语言 / 采集设备**,以及高级页里的**流式参数、
|
||||
线程数、模型目录**变化时才会重建后端并重启转写;透明度、字号、行数、灰色尾部这类外观改动是
|
||||
即时生效的,不会打断正在进行的转写。
|
||||
|
||||
### 模型页
|
||||
|
||||
@@ -80,10 +81,31 @@
|
||||
|
||||
### 高级页
|
||||
|
||||
**通用**
|
||||
|
||||
| 项 | 说明 |
|
||||
|---|---|
|
||||
| 更新粒度(秒) | 累积多少秒音频跑一步;「自动」= 由后端决定(流式模型 0.32s) |
|
||||
| 线程数 | 推理线程数;**只影响 Qwen3-ASR**,流式模型固定单线程(多线程反而更慢) |
|
||||
|
||||
**流式(只影响 Qwen3-ASR)** —— 这一组对应 llama 后端的流式参数,改动会重启识别后端。
|
||||
选了流式 ONNX 模型(zipformer / X-ASR / Nemotron)时整组会**置灰**,因为那些模型只用「更新粒度」。
|
||||
|
||||
| 项 | 对应命令行 | 说明 |
|
||||
|---|---|---|
|
||||
| 策略 | `--stream-mode` | `incremental`(增量复用,1~2 秒就出字,推荐)/ `append`(追加式,成本平坦但需要大 chunk)/ `window`(早期的对比实现) |
|
||||
| 滑窗上限(秒) | `--stream-window` | 仅 window 模式;「不限」= 不滑窗 |
|
||||
| 单段最长时长(秒) | `--stream-segment` | 超过就提交并重置上下文;「不限」= 不设上限 |
|
||||
| 前缀回滚 token 数 | `--unfixed-tokens` | 回滚丢弃最后 N 个 token —— 它们会显示成灰色的不稳定尾部 |
|
||||
| 冷启动 chunk 数 | `--unfixed-chunks` | 前 N 个 chunk 不带前缀,避免开头重复 |
|
||||
| 单段最多生成 token | `--max-tokens` | 单段生成的 token 上限 |
|
||||
| 线程数 | `--threads` | 只影响 Qwen3-ASR;流式模型固定单线程(多线程反而更慢) |
|
||||
|
||||
**调试**
|
||||
|
||||
| 项 | 对应命令行 | 说明 |
|
||||
|---|---|---|
|
||||
| 输出详细日志 | `--verbose` | 打印 llama.cpp / mtmd 的详细日志(排查加载/推理问题时用) |
|
||||
| 模型目录 | `--model-dir` | 留空 = 默认目录(占位符会显示实际路径);一般不需要改 |
|
||||
|
||||
## 配置文件
|
||||
|
||||
@@ -101,6 +123,10 @@ windowX=179 windowY=725 ; 拖动后记录的位置
|
||||
mirrorBase=https://hf-mirror.com
|
||||
proxyMode=0 ; 0=不使用 1=跟随系统 2=手动
|
||||
chunkSec=0 threads=8 ; 高级
|
||||
streamMode=incremental ; 高级:流式参数(只影响 Qwen3-ASR)
|
||||
streamWindowSec=16 streamSegmentSec=30
|
||||
unfixedTokens=5 unfixedChunks=2 maxTokens=256
|
||||
verbose=false modelDir= ; 高级:调试
|
||||
```
|
||||
|
||||
删掉这个文件(或其中某个键)就回到默认值。模型文件在
|
||||
|
||||
Reference in new issue
Block a user