生图和 TTS,终于成为可以被使用的能力
生图和 TTS 之前已经能用,但它们更像两个独立的工作台:用户需要进入对应页面,自己判断应该使用哪套配置。
这次做的事情很小,也很实际:在微应用入口上,把它们明确包装成两个能力。
imageGeneration:文生图tts:文本转语音
用户只需要选服务商
两个入口卡片各增加一个齿轮按钮。点击之后,用户只选择当前能力使用哪家服务商,不需要重新填写 API Key、地址、模型或其他重复配置。
生图可以选择:
- API 服务商
- ComfyUI
TTS 可以选择:
- Piper
- GPT-SoVITS
- API 服务商
选中的不是一套新配置,而是对应工作台已经存在的配置。服务商页面负责维护配置,能力入口负责说明“这项能力由谁来提供”。两边各自做一件事,用户不会面对两套互相打架的设置。
生图:从工作台到能力
生图能力对外只表达一件事:根据文字生成图片。
Prompt、尺寸、工作流和其他调试选项仍然留在生图工作台里。需要精细调整时进入工作台,需要把生图作为一个能力使用时,直接按 imageGeneration 找到它。
API 服务商适合直接调用远程生图服务,ComfyUI 适合已经有本地工作流的用户。用户可以根据自己的环境选择,不需要改变使用习惯。
TTS:三种路径,一个入口
TTS 的使用场景更复杂:有人使用本地 Piper,有人连接 GPT-SoVITS,也有人使用远程 API。
这些路径的配置方式不同,但用户真正关心的事情只有一个:把一段文字变成音频。
因此它们统一归到 tts 能力下。Piper 不会强行附带语音模型,用户可以使用系统语音,或自行选择外部模型;GPT-SoVITS 继续连接用户已经准备好的服务;API 服务商则使用 TTS 工作台里的现有配置。
参考音频也不再要求每次合成都重新准备。GPT-SoVITS 的 WAV 参考音频会作为用户素材保留下来,生成的音频则作为作品产物单独管理。清理生成结果,不会误删用户保存的参考音频。
入口页只告诉你状态
没有选择服务商时,卡片显示一个小小的“未配置”徽章。配置完成后,入口恢复干净,不把复杂参数塞进首页。
用户可以从这里快速判断:
- 这个能力是否已经配置
- 需要进入哪个工作台调整细节
- 当前应该使用哪种服务商
这就是这次封装的产品价值:不新增一套复杂页面,而是让已有的生图和 TTS 工作台拥有清晰、稳定、可被其他入口识别的能力边界。