indextts API 阅读 API 重磅升级!低延迟 + 音色管理 + 缓存全拉满 支持开源阅读小说软件,其他软件应该也通用

张开发
2026/4/13 23:16:33 15 分钟阅读

分享文章

indextts API 阅读 API 重磅升级!低延迟 + 音色管理 + 缓存全拉满 支持开源阅读小说软件,其他软件应该也通用
简介说明indextts API 阅读 API 重磅升级低延迟 音色管理 缓存全拉满 支持开源阅读小说软件其他软件应该也通用本文档说明当前 api.py 这一版接口相对旧版的主要升级内容、迁移方式与使用建议方便对接阅读 App、局域网调用和本地音色管理。## 适用范围- 适用于当前仓库中的 api.py- 适用于本地启动的 HTTP 服务- 适用于阅读 App 在线朗读规则接入## 本次升级重点### 1. 新增阅读直连接口新增了可直接给阅读 App 使用的接口- /v1/legado/tts - /v1/legado/help其中- /v1/legado/tts 用于真正生成音频 - /v1/legado/help 用于展示可直接复制的阅读规则帮助页已经内置最新示例不再保留旧参数写法避免复制到过期规则。### 2. 新增低延迟模式当前接口支持按“体感速度”区分的低延迟参数方案重点是- fast - latencyultra说明- fast 适合大多数场景兼顾速度和连贯性- ultra 更追求尽快出声但长句连续性会弱一点- 这不是严格意义上的客户端流式播放而是更激进的分段与低延迟策略### 3. 新增结果缓存为了减少重复请求的等待时间接口增加了两层缓存- 音频结果缓存- 参考音频特征缓存效果- 同一段文本、同一音色、同一组参数重复请求时可直接命中音频缓存- 同一参考音色被反复使用时可减少重复预处理耗时### 4. 新增音色管理接口当前版本已支持更完整的音色管理能力- /v1/speakers - /v1/speakers/default - /v1/speakers/preview - /v1/upload_audio对应能力- 获取可用音色列表- 设置默认音色- 试听指定音色- 上传参考音频并注册为新音色### 5. 帮助页支持音色面板与试听帮助页中现在会展示音色面板且资料直接读取现有音色库不再手写伪描述。页面特点- 按分组展示音色- 显示音色名、内部标识、来源、参考音频信息- 每个音色都可直接试听- 可直接复制 speaker... 进行调用### 6. 支持中文音色名调用当前版本支持直接使用中文音色名称作为 speaker 参数。例如speaker女声同时也兼容内部标识调用例如speakervoice_01### 7. 增强运行状态与排错能力新增运行状态接口- /v1/runtime可查看内容包括- 当前模型加载状态- 当前推理设备- 最近一次 TTS 错误- 缓存命中情况- CUDA 可用情况适合排查以下问题- 模型是否成功加载- 是否走了 GPU- 为什么 500 报错- 缓存是否生效## 当前推荐阅读规则### Fast 推荐规则http://127.0.0.1:8300/v1/legado/tts,{ method: POST, body: text{{java.encodeURI(speakText)}}speaker女声fast1max_text_tokens_per_segment45quick_streaming_tokens18 }适合- 日常听书- 兼顾速度与连贯性- 大部分章节正文### Ultra 极限低延迟规则http://127.0.0.1:8300/v1/legado/tts,{ method: POST, body: text{{java.encodeURI(speakText)}}speaker女声fast1latencyultramax_text_tokens_per_segment30quick_streaming_tokens8 }适合- 更强调尽快出声- 句子较短- 对首包等待更敏感的场景## 与旧版相比的变化### 1. 旧规则不建议继续使用如果你之前使用的是更早期的规则写法建议统一切换到帮助页里的最新规则。重点原因- 旧规则没有体现新的低延迟参数- 旧规则没有区分 Fast 和 Ultra- 旧规则不利于后续统一维护### 2. speakSpeed 不再是主要调速手段阅读侧虽然仍可传入 speakSpeed但当前这版接口的主要“速度优化”并不是靠传统变速而是靠这些参数- fast- latency- max_text_tokens_per_segment- quick_streaming_tokens所以如果觉得慢优先调这些参数而不是只调 speakSpeed。### 3. 音频默认不落盘当前阅读接口生成的音频主要以 HTTP 响应方式直接返回默认不作为正式结果写入 outputs 目录。这样做的好处是- 减少磁盘写入- 降低重复请求的 I/O 开销- 更适合阅读 App 高频调用## 推荐迁移方式### 如果你是从旧版阅读规则迁移建议直接做这几步1. 打开 /v1/legado/help2. 复制新的 Fast 推荐规则 或 Ultra 极限低延迟规则3. 把 speaker女声 替换成你自己的音色名称4. 在阅读 App 中覆盖旧规则5. 先用短文本测试再开始正式听书### 如果你是从只支持内部音色 ID 的旧版迁移当前可以优先改成中文名调用优点是更直观。例如把speakervoice_01改成speaker女声如果你的某个音色名称包含特殊符号仍建议优先使用内部 ID。## 常见接口一览### 阅读相关- /v1/legado/tts- /v1/legado/help### 音色相关- /v1/speakers- /v1/speakers/default- /v1/speakers/preview- /v1/upload_audio### 调试相关- /v1/runtime- /docs### 通用合成接口- /v2/synthesize## 性能优化建议如果你觉得阅读时仍然偏慢可以优先按下面思路调### 1. 优先使用 Fast先从下面这组参数开始- fast1- max_text_tokens_per_segment45- quick_streaming_tokens18### 2. 想更快就切 Ultra可以尝试- latencyultra - max_text_tokens_per_segment30 - quick_streaming_tokens8说明- 越激进越容易提升起声速度- 但越激进也越可能损失长句的自然连贯性### 3. 保持音色尽量固定同一本书尽量长期使用同一个 speaker这样更容易命中特征缓存减少反复预处理。### 4. 优先使用较短分段长句或超长段落会明显拖慢首段返回速度。阅读接口已经支持自动分段但如果正文本身特别长依然会影响等待时间。## 升级后建议检查项升级完成后建议检查以下内容1. api.py 是否能正常启动 2. /docs 是否可访问 3. /v1/runtime 是否显示正常状态 4. /v1/legado/help 是否能看到新规则和音色面板 5. /v1/speakers/preview 是否可以正常试听 6. 阅读 App 是否已经替换成新规则## 常见问题### 1. 为什么不是“真正的流式阅读”当前这版主要是低延迟优化不是严格意义上的边生成边持续推流播放。也就是说- 已经尽量缩短等待- 但本质仍是服务端生成后返回音频### 2. 为什么中文音色名以前不行现在可以了旧问题主要集中在请求解析和响应头编码兼容上。当前版本已经对中文音色名调用做了兼容处理。### 3. 为什么有时第一次慢后面快通常是下面几个原因- 首次请求会触发模型懒加载- 首次使用某个音色会做参考音频特征提取- 后续请求可能命中缓存### 4. 500 报错去哪里看优先查看- 服务端控制台输出- /v1/runtime- /docs如果是具体参数问题优先检查- speaker 是否存在- quick_streaming_tokens 是否为整数- max_text_tokens_per_segment 是否为整数图片预览下载地址https://pan.baidu.com/s/1PChhdaUPQQxXzkFJ0ARPZw?pwdyn2z 提取码: yn2z点击链接或复制整段内容打开「夸克APP」即可获取。/~8d643XzfyX~:/链接https://pan.quark.cn/s/7922cdd3943a

更多文章