test #1

Merged
sun merged 5 commits from test into main 2026-05-18 23:29:22 +08:00
Owner

变更概要

将项目从火山引擎 TTS v1 API 全面升级至 v3 API,同时重构代码架构和部署方式。

主要变更

API 升级

  • 适配火山引擎 TTS v3 单向流式 API (/api/v3/tts/unidirectional)
  • 鉴权方式从 APP_ID + BEARER_TOKEN + CLUSTER 升级为 API Key (X-Api-Key)
  • 支持更多 Resource ID(seed-tts-1.0/2.0、seed-icl-1.0/2.0 等)

架构重构

  • 合并 tts_server_linux.go + start_linux.sh + fix_crlf.sh 为单一 tts_server.go
  • 新增 .env.example 配置文件模板
  • 跨平台支持(Windows/Linux/macOS 统一二进制)

功能增强

  • 全局并发限制(最大10个同时请求)
  • IP 速率限制(每分钟100请求)
  • 请求统计与健康检查端点 (/health)
  • 错误日志与性能指标收集
  • 环境变量配置校验

性能优化

  • http.Client 连接池复用
  • 流式响应数据解析优化
  • 内存使用监控

破坏性变更 ⚠️

环境变量名称已变更,升级前必须重新配置:

旧变量(main) 新变量(test)
BYTEDANCE_TTS_APP_ID BYTEDANCE_TTS_API_KEY
BYTEDANCE_TTS_BEARER_TOKEN (已合并至 API Key)
BYTEDANCE_TTS_CLUSTER BYTEDANCE_TTS_RESOURCE_ID
BYTEDANCE_TTS_VOICE_TYPE BYTEDANCE_TTS_SPEAKER

旧版 start_linux.sh 启动脚本已移除,改为直接运行二进制。

测试验证

  • v3 API 接口调用正常
  • OpenAI 兼容端点 /v1/audio/speech 测试通过
  • 健康检查 /health 返回正常
  • 限流与并发保护功能验证通过

合并后计划

  • 保留 test 分支继续推进渠道化改造
  • main 分支作为稳定基座版本

## 变更概要 将项目从火山引擎 TTS v1 API 全面升级至 v3 API,同时重构代码架构和部署方式。 ## 主要变更 ### API 升级 - 适配火山引擎 TTS v3 单向流式 API (`/api/v3/tts/unidirectional`) - 鉴权方式从 `APP_ID + BEARER_TOKEN + CLUSTER` 升级为 `API Key` (`X-Api-Key`) - 支持更多 Resource ID(`seed-tts-1.0/2.0`、`seed-icl-1.0/2.0` 等) ### 架构重构 - 合并 `tts_server_linux.go` + `start_linux.sh` + `fix_crlf.sh` 为单一 `tts_server.go` - 新增 `.env.example` 配置文件模板 - 跨平台支持(Windows/Linux/macOS 统一二进制) ### 功能增强 - 全局并发限制(最大10个同时请求) - IP 速率限制(每分钟100请求) - 请求统计与健康检查端点 (`/health`) - 错误日志与性能指标收集 - 环境变量配置校验 ### 性能优化 - `http.Client` 连接池复用 - 流式响应数据解析优化 - 内存使用监控 ## 破坏性变更 ⚠️ **环境变量名称已变更**,升级前必须重新配置: | 旧变量(main) | 新变量(test) | |---|---| | `BYTEDANCE_TTS_APP_ID` | `BYTEDANCE_TTS_API_KEY` | | `BYTEDANCE_TTS_BEARER_TOKEN` | (已合并至 API Key) | | `BYTEDANCE_TTS_CLUSTER` | `BYTEDANCE_TTS_RESOURCE_ID` | | `BYTEDANCE_TTS_VOICE_TYPE` | `BYTEDANCE_TTS_SPEAKER` | 旧版 `start_linux.sh` 启动脚本已移除,改为直接运行二进制。 ## 测试验证 - [x] v3 API 接口调用正常 - [x] OpenAI 兼容端点 `/v1/audio/speech` 测试通过 - [x] 健康检查 `/health` 返回正常 - [x] 限流与并发保护功能验证通过 ## 合并后计划 - 保留 `test` 分支继续推进渠道化改造 - `main` 分支作为稳定基座版本 ---
sun self-assigned this 2026-05-18 23:26:20 +08:00
sun added 5 commits 2026-05-18 23:26:21 +08:00
新增:
- 添加.env.example环境变量配置示例
- 重构鉴权逻辑,支持新旧两种鉴权模式
- 适配v3版API接口,实现流式响应
- 完善README文档和配置说明

移除:
- 删除原Linux启动脚本start_linux.sh

优化:
- 重构代码结构,适配新的API参数格式
- 优化日志输出和错误处理
1. 将初始化TTS配置的致命错误改为警告,服务继续运行
2. 在TTS请求和健康检查中加入配置错误判断,返回对应错误信息
3. 在健康检查详情中添加配置错误状态和提示信息
简化了配置逻辑,删除了Legacy鉴权相关的环境变量、代码判断分支和文档说明,统一使用API Key进行鉴权,降低配置复杂度
- 新增全局并发请求限制,最多同时处理10个TTS请求
- 更新健康检查接口,新增配置检查和统计信息返回
- 调整响应格式文档,仅保留wav格式支持说明
- 补充限流机制说明和触发后的响应示例
- 优化日志输出,限流时打印中文警告日志
1. 为限流器增加定期清理过期请求记录的功能,减少内存占用
2. 重构httpPostStream使用context超时管理,复用全局http客户端
3. 调整synthesis函数返回结果结构,新增请求ID字段
4. 优化请求体读取错误处理,细化错误响应
5. 为TTS响应添加X-Request-Id响应头
sun merged commit ac614be190 into main 2026-05-18 23:29:22 +08:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sun/Volcano-Engine-TTS-UI#1