mcpField
E
elevenlabs-music-generation

elevenlabs-music-generation

github.com/prime-skills创意与媒体61378.2k 次安装24 周前更新
代码仓库

关于 elevenlabs-music-generation

elevenlabs-music-generation 是通过 RunComfy CLI 调用 ElevenLabs Music 的音乐生成技能,面向歌曲和配乐创作。它用单个提示词描述风格与歌词,可生成带段落结构的歌曲或纯音乐,并允许设置时长。

主要功能

  1. 01根据文本生成歌曲与器乐曲
  2. 02使用段落标记控制歌曲结构
  3. 03生成纯音乐或含人声曲目
  4. 04设置 5 秒至 5 分钟时长
  5. 05输出 44.1 kHz 立体声音频

适用场景

  1. 01为视频创作主题曲
  2. 02制作播客片头或片尾配乐
  3. 03生成游戏背景循环音乐
  4. 04制作短品牌音乐标识

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/prime-skills/runcomfy-agent-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

字段类型必填默认值说明
promptstring是—风格描述和带有段落标记的歌词。参见提示词技巧
music_length_msint否40000输出时长,单位为毫秒。5000–300000(5 秒–5 分钟)
force_instrumentalbool否falsetrue = 仅生成纯音乐,不含人声
output_formatstring否mp3_standardmp3_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_ms 5000–300000)。如需生成更长的作品,请分段生成,再通过外部方式拼接。
  • 费用随时长增加——生成 5 分钟音频的费用约为 30 秒音频的 10 倍。
  • force_instrumental 是唯一的人声开关——无法通过此端点指定特定的人声身份,也无法克隆歌手。
  • 此技能专用于 ElevenLabs Music。音效、文本转语音或声音克隆属于 ElevenLabs 的其他功能,无法通过此端点使用。

退出代码

code含义
0成功
64CLI 参数错误
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 行属于操作者的一次性设置,并非此技能每次调用时执行的命令。

另请参阅

评论

支持 Markdown