SuperAPI AI 工具集

elevenlabs-music-generation

设计与创作

查看项目

更新于 10-15 08:33

技能介绍

ElevenLabs Music Generation 是 RunComfy Model API 上的一项音乐生成技能,底层使用 ElevenLabs Music 模型,通过 runcomfy CLI 调用。它面向需要从文本生成完整歌曲或器乐曲目的场景,输出为录音室级别的 44.1 kHz 立体声音频,单次调用时长覆盖 5 秒到 5 分钟,并支持段落级结构控制。

用途

该技能的核心能力是生成结构化歌曲并包含真实人声。用户提供一段风格简述,加上带段落标记的歌词,模型会返回一首结构连贯、已完成混音的曲目。适用场景包括:包含主歌/副歌结构的完整人声歌曲、多语言歌词、节奏一致的演唱;纯器乐背景铺底,用于背景音乐、播客片头、游戏循环;短品牌素材如标识音、转场音、主题音乐(5–30 秒);最长 5 分钟的长篇曲目;以及可商用用途的输出。如果只是需要环境音或一次性音效(如雷声、脚步),那属于音效任务而非音乐任务,本技能针对的是歌曲与曲目。

主要能力

  • 输入字段:prompt(必填,字符串)承载风格描述与带段落标记的歌词;music_length_ms(可选,整数,默认 40000,范围 5000–300000 毫秒)控制输出时长;force_instrumental(可选,布尔,默认 false)为 true 时仅生成器乐、不含人声;output_format(可选,字符串,默认 mp3_standard),可选 WAV 等格式,完整格式列表见模型页 API 选项卡。
  • 输出:44.1 kHz 立体声音频,结果 JSON 中包含生成音频的 URL,CLI 会将其下载到 --output-dir。
  • 结构控制:可在提示词中使用 [Intro]、[Verse]、[Chorus]、[Bridge]、[Outro] 等段落标记,并可标注小节数或大致时长。
  • 多语言:直接以目标语言撰写歌词,需要时可在行内标注语言/口音。
  • 费用:约为每秒生成音频 $0.0083(30 秒约 $0.25,60 秒约 $0.50,5 分钟约 $2.49),费用随 music_length_ms 变化。

使用方式

  1. 安装:全局安装 npm i -g @runcomfy/cli,或零安装使用 npx -y @runcomfy/cli --version。
  2. 登录:执行 runcomfy login,或在 CI 中设置 export RUNCOMFY_TOKEN=。
  3. 生成音乐:调用 runcomfy run elevenlabs/elevenlabs/music-generation --input '{"prompt": "..."}' --output-dir ./out。

完整人声歌曲示例(提示词中包含风格、BPM、人声类型及段落标记与歌词,music_length_ms 设为 60000);器乐背景示例(描述乐器、风格、BPM,设置 force_instrumental: true 并在提示词中写明 no vocals,music_length_ms 设为 90000);短品牌音效示例(5 秒愉悦品牌转场音,music_length_ms 设为 5000,force_instrumental: true)。

提示词编写要点:先写风格简述(流派、情绪、BPM、关键乐器、人声类型);再写带段落标记的歌词并标注小节数;保持歌词节奏一致(每行音节数均匀、押韵清晰);写明主奏乐器与混音优先级;器乐场景同时设置 force_instrumental: true 并在提示词中注明 no vocals;多语言时用目标语言写歌词;避免互相矛盾的风格指令;先用 30–45 秒草稿验证方向,再进行长时长正式渲染。

常见模式:视频主题曲(完整简述+歌词+段落结构,时长匹配视频长度);播客片头/片尾(force_instrumental: true,10–20 秒,要求 loop-friendly、干净收尾);游戏背景循环(器乐,描述 seamless loop,60–120 秒,节奏一致);多语言发行(同一风格简述,每语言一次调用,仅替换歌词);迭代后定稿(先用 music_length_ms: 35000 草稿锁定流派/节奏/结构,再按完整长度渲染)。

退出码:0 成功;64 CLI 参数错误;65 输入 JSON 错误或 schema 不匹配;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 会在退出前取消远程请求。

限制

  • 仅有一个提示词字段承载全部内容(风格 + 歌词),没有独立的 “lyrics” 参数。
  • 每次调用时长 5 秒–5 分钟(music_length_ms 5000–300000)。更长作品需分段生成后在外部拼接。
  • 费用随时长增长,5 分钟渲染约为 30 秒渲染的 10 倍。
  • force_instrumental 是唯一的人声开关,无法通过该端点指定具体声音身份或克隆歌手。
  • 本技能专用于 ElevenLabs Music;音效、文本转语音或声音克隆属于 ElevenLabs 的其他能力,不在该端点范围内。

安全与隐私

仅通过经验证的包管理器安装,使用 npm i -g @runcomfy/cli 或 npx -y @runcomfy/cli;操作方不应让代理将任意远程安装脚本通过管道交给 shell 执行。令牌存储方面,runcomfy login 会将 API 令牌写入 ~/.config/runcomfy/token.json(权限 0600);CI/容器中可设置 RUNCOMFY_TOKEN 环境变量绕过文件;切勿将令牌回显到提示词、日志或提交到版本库。输入边界方面,提示词以 JSON 字符串经 --input 传递,CLI 不会对提示词内容做 shell 展开,直接通过 HTTPS 将 JSON 请求体发送至 Model API,即提示词中出现反引号、引号或 $(...) 也不会构成 shell 注入面。歌词来源方面,如用户提供歌词,需确认其拥有相应权利,围绕受版权保护的歌词生成音乐由操作方负责,技能不做检查。出站端点白名单仅为 model-api.runcomfy.net(请求提交)以及 *.runcomfy.net / *.runcomfy.com(生成音频下载白名单),无遥测、无回调。生成文件大小上限为单次下载超过 2 GiB 时 CLI 中止。Bash 使用范围:技能仅调用 runcomfy <subcommand>,npm/npx 相关命令属一次性操作方设置,并非技能每次调用时执行。

相关

runcomfy-cli(底层 CLI、schema 发现、轮询模式、脚本化);ElevenLabs Music 模型页(包含最新 schema 的完整 API 选项卡);全部 RunComfy 模型(图像、视频与音频端点);ai-video-generation(将生成曲目与生成视频搭配);ai-avatar-video(口播视频,走语音而非音乐路径)。