关于 elevenlabs-music-generation
通过 `runcomfy` CLI 在 RunComfy 上调用 ElevenLabs Music,生成结构化歌曲和纯音乐。支持带段落标记的歌词、纯器乐输出,以及 5 秒至 5 分钟的曲目。
主要功能
- 01生成演唱歌曲和纯音乐
- 02用段落标记组织歌词
- 03生成 5 秒至 5 分钟曲目
- 04支持多语言歌词
- 05通过 CLI 下载生成音频
适用场景
- 01创作主歌与副歌结构的歌曲
- 02制作播客纯音乐片头
- 03生成短品牌音效曲
- 04制作其他语言的歌词版本
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ doany-ai/ skills --skill elevenlabs-music-generation安装后在 Claude Code 中输入/elevenlabs-music-generation确认已加载。
详细介绍
ElevenLabs AI Music Generation — RunComfy 专业版
根据文本描述生成完整歌曲和纯音乐曲目——录音室级别的 44.1 kHz 立体声,时长为 5 秒至 5 分钟,并可控制各段落的结构。通过 runcomfy CLI 调用 RunComfy Model API 上的 ElevenLabs Music。
runcomfy.com · ElevenLabs Music 模型 · CLI 文档
安装此技能
npx skills add agentspace-so/runcomfy-agent-skills --skill elevenlabs-music-generation -g
由 RunComfy CLI 提供支持
# 1. Install (one of — see runcomfy-cli skill for details)
npm i -g @runcomfy/cli # global install
npx -y @runcomfy/cli --version # zero-install
# 2. Sign in
runcomfy login # or in CI: export RUNCOMFY_TOKEN=<token>
# 3. Generate music
runcomfy run elevenlabs/elevenlabs/music-generation \
--input '{"prompt": "..."}' \
--output-dir ./out
深入了解 CLI:runcomfy-cli 技能。
何时使用 ElevenLabs Music
ElevenLabs Music 擅长创作带真实人声、结构完整的歌曲——它会根据风格简介和带有段落标记的歌词,生成一首连贯且经过混音的曲目。适用于:
- 完整人声歌曲——主歌/副歌结构、多语言歌词、节奏一致
- 纯音乐背景音轨——设置
force_instrumental: true,用于背景音乐、播客开场曲、游戏循环音乐 - 简短品牌音频素材——广告歌、提示音、主题音乐(5–30 秒)
- 长篇曲目——单次调用最长可达 5 分钟
- 商业用途——生成内容适合商业使用
如果用户只需要环境音或单次音效(雷声、脚步声),那属于音效任务,而非音乐任务——ElevenLabs Music 用于创作歌曲和曲目。
端点和输入架构
模型:elevenlabs/elevenlabs/music-generation
| 字段 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
prompt | string | 是 | — | 风格描述和带有段落标记的歌词。参见提示词技巧 |
music_length_ms | int | 否 | 40000 | 输出时长,单位为毫秒。5000–300000(5 秒–5 分钟) |
force_instrumental | bool | 否 | false | true = 仅生成纯音乐,不含人声 |
output_format | string | 否 | mp3_standard | mp3_standard(默认)或 WAV — 完整格式列表请参见模型页面的 API 标签页 |
输出:44.1 kHz 立体声音频。结果 JSON 包含生成音频的 URL——CLI 会将其下载到 --output-dir。
定价:生成音频每秒约 $0.0083(30 秒 ≈ $0.25,60 秒 ≈ $0.50,5 分钟 ≈ $2.49)。费用随 music_length_ms 增加,因此建议先生成较短草稿,再生成较长的最终版本。
调用方法
带结构的完整人声歌曲:
runcomfy run elevenlabs/elevenlabs/music-generation \
--input '{
"prompt": "Upbeat indie-pop anthem, bright electric guitars, driving drums, 120 BPM, female lead vocal. [Intro 8 bars] instrumental build. [Verse] Chalk on the palms, laces double-knotted, morning on the ridge. [Chorus] We rise, we strike, we never fade out. [Bridge] soft breakdown, just piano and voice. [Outro] full band, fade.",
"music_length_ms": 60000
}' \
--output-dir ./out
纯音乐背景音轨:
runcomfy run elevenlabs/elevenlabs/music-generation \
--input '{
"prompt": "Calm lo-fi hip-hop instrumental for a study playlist. Warm Rhodes piano, soft vinyl crackle, mellow boom-bap drums, 75 BPM. No vocals. Consistent loop-friendly groove throughout.",
"music_length_ms": 90000,
"force_instrumental": true
}' \
--output-dir ./out
简短品牌广告歌:
runcomfy run elevenlabs/elevenlabs/music-generation \
--input '{
"prompt": "5-second cheerful brand stinger, bright marimba and a single uplifting chord resolve, no vocals.",
"music_length_ms": 5000,
"force_instrumental": true
}' \
--output-dir ./out
提示词编写技巧
ElevenLabs Music 使用一个 prompt 字段,同时承载风格简介和歌词。请妥善组织内容:
- 先写风格简介:流派、情绪、速度(BPM)、主要乐器、人声类型。例如:
"Upbeat indie-pop anthem, bright electric guitars, 120 BPM, female lead vocal." - 然后写带有段落标记的歌词:
[Intro]、[Verse]、[Chorus]、[Bridge]、[Outro]。添加大致时长或小节数,例如[Intro 8 bars]、[Verse 16 bars]。 - 保持歌词韵律一致——每行音节数相同,并采用清晰的押韵格式。模型会遵循韵律;韵律松散会导致措辞生硬。
- 注明主要乐器和混音优先级——
"electric guitar carries the chorus, drums sit back in the verse." - 生成纯器乐音乐时,设置
force_instrumental: true,并在提示词中写上“no vocals”——双重保险。 - 多语言内容:用目标语言写歌词;必要时在行内注明口音或语言(
[Verse] (sung in Brazilian Portuguese) ...)。 - 避免相互矛盾的风格指令——在同一个提示词中写“aggressive metal”和“soft lullaby”会让模型困惑。每次调用只采用一种协调一致的方向。
- 先写短版,再完成长版:先用 30–45 秒的草稿(
music_length_ms: 35000)验证方向,再付费生成 5 分钟的音频。
常见模式
视频主题曲
- 完整的简介、歌词和
[Intro]/[Verse]/[Chorus]结构,music_length_ms与视频时长相匹配
播客片头曲 / 片尾曲
force_instrumental: true,10–20 秒,“loop-friendly, clean ending”
游戏背景循环音乐
force_instrumental: true,描述“seamless loop”,60–120 秒,保持节奏稳定
多语言发行(同一首歌,多种语言)
- 每种语言调用一次,风格简介保持一致,只替换歌词
迭代后定稿
- 使用
music_length_ms: 35000生成草稿,以确定流派、速度和结构 → 以完整时长生成最终版本
限制
- 一个
prompt字段承载所有内容(风格 + 歌词)。没有单独的“lyrics”参数。 - 每次调用时长为 5 秒至 5 分钟(
music_length_ms5000–300000)。如需生成更长的作品,请分段生成,再通过外部方式拼接。 - 费用随时长增加——生成 5 分钟音频的费用约为 30 秒音频的 10 倍。
force_instrumental是唯一的人声开关——无法通过此端点指定特定的人声身份,也无法克隆歌手。- 此技能专用于 ElevenLabs Music。音效、文本转语音或声音克隆属于 ElevenLabs 的其他功能,无法通过此端点使用。
退出代码
| code | 含义 |
|---|---|
| 0 | 成功 |
| 64 | CLI 参数错误 |
| 65 | 输入 JSON 错误 / 架构不匹配 |
| 69 | 上游 5xx |
| 75 | 可重试:超时 / 429 |
| 77 | 未登录或令牌被拒绝 |
完整参考:docs.runcomfy.com/cli/troubleshooting。
工作原理
此技能会使用 JSON 请求体调用 runcomfy run elevenlabs/elevenlabs/music-generation。CLI 会向 RunComfy Model API 发送 POST 请求、轮询请求状态、获取结果,并将生成的音频文件下载到 --output-dir。Ctrl-C 会在退出前取消远程请求。
安全与隐私
- 仅通过经验证的软件包管理器安装。 使用
npm i -g @runcomfy/cli或npx -y @runcomfy/cli。Agent 不得代表用户将任意远程安装脚本通过管道传入 shell 执行——如果操作者想采用docs.runcomfy.com/cli/install中记录的 curl 管道方式,应先检查脚本。 - 令牌存储:
runcomfy login会将 API 令牌写入~/.config/runcomfy/token.json,文件权限为 0600。在 CI / 容器中设置RUNCOMFY_TOKEN环境变量即可绕过该文件。切勿将令牌回显到提示词或日志中,也不要将其提交到代码库。 - 输入边界(shell 注入):提示词通过
--input以 JSON 字符串的形式传递。CLI 不会对提示词内容进行 shell 展开;而是直接通过 HTTPS 将 JSON 正文传输到 Model API。提示词内容不存在 shell 注入面,即使包含反引号、引号或$(...)模式也不例外。 - 歌词来源:如果用户提供歌词,请确认他们拥有相关权利。围绕受版权保护的歌词生成音乐由操作者负责——此技能不会进行检查。
- 出站端点(允许列表):仅限
model-api.runcomfy.net(提交请求)和*.runcomfy.net/*.runcomfy.com(生成音频的下载白名单)。无遥测、无回调。 - 生成文件大小上限:CLI 会中止任何超过 2 GiB 的单个下载。
- bash 使用范围:此技能仅调用
runcomfy <subcommand>——npm/npx行属于操作者的一次性设置,并非此技能每次调用时执行的命令。
另请参阅
runcomfy-cli— 底层 CLI、架构发现、轮询模式、脚本编写- ElevenLabs Music 模型页面 — 包含最新架构的完整 API 选项卡
- 所有 RunComfy 模型 — 图像、视频和音频端点
ai-video-generation— 将生成的曲目与生成的视频配对ai-avatar-video— 对话式头像视频(使用不同的音频路径——语音,而非音乐)