Ignis 口播音色选择交互方案
输入框参数化标签 + ElevenLabs 音色浮层的简化版
入口跟随需音色技能 选择后进入输入框 调用前校验语种和音色

背景说明

口播配音能力升级后,实际执行必须指定一个具体音色。音色不再靠“中年磁性男声”这类自然语言描述,而是来自服务商音色列表的选择结果;未来其他技能只要包含口播配音能力,也会复用同一套音色选择逻辑。但 Ignis 的主体验仍是 Agent 对话和多模态输入框,因此需要把音色选择做成轻量入口,而不是把流程改成传统配置表单。

工具约束 包含口播配音能力的工具调用需要明确 voice_id,缺失时不能稳定执行。
前端补位 提供音色展示、搜索、筛选、试听、选择能力,并写回输入框。
交互原则 保留 Agent 对话流,只在关键参数处增强感知和选择,不新增重表单。

一、输入框如何兼容并增强音色选择感知

在现有多模态输入框里增加音色入口、一次性引导和音色 chip 写入,不改变用户继续用自然语言表达需求的方式。

Canvas Chat
系统理解
当前 Session 已加载过口播能力,因此输入框持续展示音色入口。用户可以在每轮消息里显式覆盖音色。
用户意图示例
使用更有社媒感的男声,把这段脚本读得更兴奋一点。
入口 音色入口贴近技能入口,表示它是当前技能上下文的参数,不是独立工具。
选择 Popover 内先搜索和筛选,再试听。试听状态不污染输入。
写入 点击某个音色后直接写回输入框;再次选择音色时替换上一枚音色 chip。
选择音色
选择技能 点击后直接插入标签
为口播选择音色
0/4000 0/5
音色入口可见:当前输入框已选需音色技能,且 Session 也有相关历史。

二、快速开始提示词模板优化

快速开始仍然只是输入框下方的填充入口;点击后生成一段可编辑提示词,并默认带入口播配音能力、语种变量和音色 chip。

Ignis 首页输入框
输入您的设计需求
选择语种
0/8000 0/10
快速开始

三、数据来源与对接说明

这里补充前后端和服务商的对接边界,避免原型只停留在 UI 层。

Data Contract Notes
前端需要的数据
音色列表至少需要:voice_id、名称、关键词/描述、语言、性别、年龄、是否可用、试听地址,以及可用于排序的字段,如热度、创建/更新时间、使用人数。搜索、筛选、排序可以先前端本地完成,也可以走后端查询。
后端/工具需要的数据
工具调用时不能只拿“年轻男声”这类文案,需要拿到明确 voice_id。后端可以在调用前校验 voice_id 是否存在、是否有权限、是否可用于当前供应商账号。
技能配置确认项
需要后端在技能配置里标记哪些技能需要音色参数。前端不维护固定技能枚举,只根据 requiredInputs/capabilities 判断是否展示音色入口;组合技能只要包含口播配音能力,也应返回对应能力标记。
建议边界
前端负责展示、试听、选择和把 voice_id 写入输入上下文;后端负责服务商鉴权、列表包装、试听代理、voice_id 校验和工具调用兜底。
列表来源 ElevenLabs API 或后端聚合接口返回可选音色。
用户选择 前端显示名称,但保留 voice_id 作为实际参数。
排序策略 保留热门、最新、用户最多等排序;先不加最近使用,避免和排序入口冲突。