需启用ElevenLabs v3 Alpha API的对话模式,严格按[角色名]格式编写剧本,绑定各角色voice_id,通过API或Web界面配置多角色语音映射并校验一致性。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

如果您希望在ElevenLabs中为剧本创作生成自然、角色分明的多角色对话音频,则需明确配置不同语音ID与对应文本段落,并启用对话模式。以下是实现该目标的具体流程:
ElevenLabs v3 Alpha API原生支持多角色对话场景,必须使用该版本才能启用完整对话模式。v2.5及更早版本不支持角色自动切换与上下文情感连贯性处理。
1、登录ElevenLabs开发者控制台,进入API Keys页面;
2、确认已启用v3 Alpha权限,若未显示,请提交访问申请并等待审核通过;
3、在代码调用中显式指定model_id为eleven_multilingual_v3或eleven_turbo_v3;
4、设置请求头中包含Content-Type: application/json与有效API密钥。
对话文本必须按严格格式组织,每个角色发言前须以[角色名]开头,且同一角色名需全程一致,系统据此绑定预设语音ID。
1、打开Voice Lab,为每位角色创建独立声音:上传1分钟干净语音→命名(如“林薇_记者”“陈哲_刑警”)→保存获取唯一voice_id;
2、在脚本编辑区按行书写,每行仅含一个角色发言,格式为:[林薇_记者]您当时是否看见嫌疑人进入车库?;
3、避免跨行合并语句,禁止在括号内使用空格或特殊符号(如“林薇 - 记者”将导致匹配失败);
4、可在句末添加音频标签控制语气,例如[林薇_记者]这不可能!{emotion: urgent}。
需在请求体中显式声明每个角色名到voice_id的映射,系统据此为每段文本分配对应声线,而非全局统一语音。
1、构造JSON payload,包含text字段(完整剧本字符串)与voice_settings字段;
2、在voice_settings内嵌入role_voice_map对象,键为角色名(如"林薇_记者"),值为对应voice_id(如"9aBcDeFgHiJkLmNoPqRsTuVwXyZ123");
3、确保role_voice_map中所有键均在text中以[xxx]形式出现,缺失将触发默认语音回退;
4、发送POST请求至https://api.elevenlabs.io/v3/text-to-speech/dialogue端点。
对于无代码操作,可利用Text to Speech页面的“Dialogue Builder”可视化模块,逐段定义角色与语音,系统自动生成带时间戳的多轨音频。
1、进入TTS主界面后,点击右上角“Switch to Dialogue Mode”按钮;
2、点击“+ Add Speaker”,依次输入角色名称、选择已保存语音、粘贴该角色全部台词;
3、为每段台词单独启用Emotion Control滑块,调节紧张度、语速波动等参数;
4、全部角色添加完毕后,点击“Preview Dialogue”,系统按顺序播放并自动插入自然停顿与呼吸间隙。
若生成音频中出现角色声线错配(如A角色台词由B声音朗读),通常因角色名拼写不一致或voice_id未正确绑定所致。
1、检查剧本中所有[ ]内的名称是否与Voice Lab中保存的角色名完全一致(区分大小写与下划线);
2、在API调用返回的response.metadata.role_assignments中查看实际分配日志;
3、若某角色未被识别,临时将其名称替换为平台默认角色名(如“Narrator”“Speaker-1”)再重试;
4、对关键台词段落单独提取,使用/v1/text-to-speech/{voice_id}单语音接口验证该voice_id输出是否正常。
以上就是elevenlabs如何用多角色对话生成剧本_ElevenLabs多角对话生成流程【编剧】的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号