# Implementation Tasks ## 1. 配置类实现 - [ ] 1.1 创建 `SiliconFlowProviderConfig` 配置类 - 继承 `VoiceProviderProperties.ProviderConfig` - 添加硅基流动特有配置字段 - 添加默认值和配置前缀 ## 2. API 客户端实现 - [ ] 2.1 创建 `SiliconFlowApi` HTTP 客户端 - 实现 `uploadVoice()` 方法 - 上传参考音频 - 实现 `synthesize()` 方法 - 文本转语音 - 实现 `transcribe()` 方法 - 语音转文本(可选) - 配置 RestTemplate/ WebClient - 添加请求/响应日志 ## 3. DTO 类实现 - [ ] 3.1 创建 `SiliconFlowVoiceUploadRequest` - 上传参考音频请求 - [ ] 3.2 创建 `SiliconFlowVoiceUploadResponse` - 上传参考音频响应 - [ ] 3.3 创建 `SiliconFlowTtsRequest` - 文本转语音请求 - [ ] 3.4 创建 `SiliconFlowTtsResponse` - 文本转语音响应(二进制处理) ## 4. Provider 实现类 - [ ] 4.1 创建 `SiliconFlowProvider` 实现类 - 实现 `VoiceCloneProvider` 接口 - 实现 `cloneVoice()` 方法 - 实现 `synthesize()` 方法 - 实现 `supports()` 方法 - 实现 `getProviderType()` 方法 - 添加 `@Component` 注解注册为 Spring Bean ## 5. 配置文件更新 - [ ] 5.1 更新 `application.yaml` - 添加 `yudao.voice.providers.siliconflow` 配置节 - 配置 API Key、base URL、模型等参数 - 默认设置为 `enabled: false` ## 6. 测试与验证 - [ ] 6.1 编写单元测试 - 测试 `SiliconFlowApi` HTTP 调用 - 测试 `SiliconFlowProvider` 适配逻辑 - Mock 硅基流动 API 响应 - [ ] 6.2 集成测试 - 测试语音克隆完整流程 - 测试 TTS 合成完整流程 - 测试供应商切换功能 - [ ] 6.3 验证前端兼容性 - 验证 `voiceConfig.js` 支持 `siliconflow` 类型 - 验证 API 请求支持 `providerType` 参数 ## 7. 文档与清理 - [ ] 7.1 更新相关文档 - 添加硅基流动配置说明 - 添加硅基流动使用示例 - [ ] 7.2 代码审查与清理 - 检查代码规范 - 移除调试代码 - 确保日志级别正确 --- **总计**: 20 项任务 **预计工作量**: 2-3 天 **依赖**: 多供应商架构重构已完成