mcpField
A
ace-step

ace-step

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

关于 ace-step

ace-step 是面向音乐创作者的 RunComfy 技能,使用 ACE Step 开源权重模型生成、修补和扩展音频。它通过 RunComfy CLI 提供四种端点,适合从低成本草稿到多语言歌曲制作。

主要功能

  1. 01按标签生成音乐
  2. 02支持结构化歌词与纯音乐
  3. 03支持 50 多种语言的人声
  4. 04按时间范围重绘音频
  5. 05双向扩展现有曲目

适用场景

  1. 01批量制作背景音乐草稿
  2. 02生成多语言歌曲版本
  3. 03替换歌曲中的副歌或桥段
  4. 04为短曲添加前奏和尾奏

安装

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

$npx skills add https://github.com/prime-skills/runcomfy-agent-skills --skill ace-step

安装后在 Claude Code 中输入/ace-step确认已加载。

详细介绍

ACE Step — RunComfy Pro 套装

使用 StepFun-AI 的 ACE Step 开放权重模型,通过标签驱动音乐生成、修补和扩展。提供 4 个可通过命令行访问的端点,每秒音频费用为 $0.0002–0.0003,每次调用最长可生成 4 分钟。

runcomfy.com · ACE Step 基础版 · ACE Step 1.5 · CLI 文档

安装此技能

npx skills add agentspace-so/runcomfy-agent-skills --skill ace-step -g

由 RunComfy CLI 提供支持

步骤 1 — 安装(任选一种,详情请参阅 runcomfy-cli 技能):

npm i -g @runcomfy/cli         # global install
npx -y @runcomfy/cli --version # zero-install

步骤 2 — 登录(或在 CI / 容器中设置 RUNCOMFY_TOKEN 环境变量):

runcomfy login

步骤 3 — 生成:

runcomfy run acestep-ai/ace-step/text-to-audio \
  --input '{"tags": "..."}' \
  --output-dir ./out

CLI 深入指南:runcomfy-cli 技能。


选择合适的端点

按最新版本优先列出。

ACE Step 1.5(文本转音频) — acestep-ai/ace-step-1.5/text-to-audio

最新的 ACE Step 生成模型。支持 50 多种语言的演唱,结构化歌词处理更完善,其他方面与基础版相同。费用略高($0.0003/s,而基础版为 $0.0002/s)。 适用于:多语言歌词、高品质主唱曲目、需要清晰段落结构的歌曲。 不适用于:对成本敏感且基础模型已足够的批量任务。

ACE Step(文本转音频) — acestep-ai/ace-step/text-to-audio (默认 — 经济且快速)

原版 ACE Step。标签驱动编曲,可选歌词,支持 5–240 s 立体声音频。$0.0002/s — 比 ElevenLabs Music 便宜约 27 倍。 适用于:大量草稿、背景音乐、短乐曲、游戏循环音乐、对成本敏感的迭代。 不适用于:追求极致精良的商业主唱副歌——这类需求可尝试 ACE Step 1.5 或 ElevenLabs Music。

ACE Step(音频修补) — acestep-ai/ace-step/audio-inpaint

在现有曲目中重新生成一个时间范围(并非基于遮罩;使用以秒为单位的 start_time / end_time,各自从曲目的开头或结尾起算)。 适用于:修复曲目中间不理想的副歌、替换过渡段、替换 20 s 片段而无需重新渲染整首歌。 不适用于:没有时间范围限制的编辑——这类编辑不符合参数结构。

ACE Step(音频扩展) — acestep-ai/ace-step/audio-outpaint

双向扩展现有曲目——在前面添加前奏、在后面添加尾奏,或两者兼加。 适用于:将 30 s 草稿延长为 2 min 版本、添加淡入效果、围绕现有主题构建更长的编曲。 不适用于:将曲目总时长延长至超过 4 min——请改为串联多次调用。


路线 1:ACE Step 文本转音频(默认)

模型:acestep-ai/ace-step/text-to-audio(1.5 版本请使用 acestep-ai/ace-step-1.5/text-to-audio)

参数结构(两个版本相同)
字段类型必填默认值说明
tagsstring是—以逗号分隔的流派 / 氛围 / 乐器标签,用于驱动编曲
lyricsstring否—演唱内容。使用段落标记 [Verse]、[Chorus]、[Bridge]。无演唱时使用 [inst] 或 [instrumental]
durationint否60音频时长,单位为秒。5–240(每次调用最长 4 min)
seedint否-1用于复现结果;-1 表示随机生成

定价:ACE Step 为 $0.0002/s · ACE Step 1.5 为 $0.0003/s。60 s ≈ $0.012 / $0.018;240 s ≈ $0.048 / $0.072。

调用

标签驱动的纯音乐:

runcomfy run acestep-ai/ace-step/text-to-audio \
  --input '{
    "tags": "lo-fi hip-hop, mellow, vinyl crackle, rhodes piano, soft drums, 75 BPM",
    "lyrics": "[inst]",
    "duration": 90
  }' \
  --output-dir ./out

带有完整结构的人声歌曲(多语言内容请使用 1.5):

runcomfy run acestep-ai/ace-step-1.5/text-to-audio \
  --input '{
    "tags": "indie pop, anthemic, electric guitar, driving drums, female vocal, 120 BPM",
    "lyrics": "[Verse]\nChalk on the palms, laces double-knotted\nMorning on the ridge, the sun is rising\n[Chorus]\nWe rise, we strike, we never fade out\nWe rise, we strike, we sing it loud\n[Bridge]\nSoft piano breakdown\n[Outro]\nFull band, fade",
    "duration": 60
  }' \
  --output-dir ./out
提示词技巧
  • 标签最关键——描述要具体:"lo-fi hip-hop, mellow, vinyl crackle, rhodes piano, soft drums, 75 BPM" 比 "chill music" 效果更好。
  • 重要时,在标签中注明 BPM——ACE 会遵循节奏描述。
  • 为歌词添加段落标记:[Verse]、[Chorus]、[Bridge]、[Outro]。保持各行的韵律一致。
  • 生成纯器乐的快捷方式:"lyrics": "[inst]" 或 "[instrumental]"。为确保万无一失,也在标签中注明“no vocals”。
  • 多语言演唱:ACE Step 1.5 支持 50 多种语言。直接用目标语言写歌词,并在标签中注明语言("japanese vocal, j-pop")。
  • 固定随机种子以便复现("seed": 42);使用 -1 可探索不同变化。
  • 先低成本起草,再精修:ACE Step 的成本低 5–10 倍,非常适合在生成长音频前反复调整标签。

路线 2:ACE Step 音频修补

模型:acestep-ai/ace-step/audio-inpaint 目录:audio-inpaint

参数结构
字段类型必填默认值说明
audiostring是—MP3 / WAV / FLAC 的 HTTPS URL。最长 60 min
tagsstring是—用逗号分隔的标签,用于引导重新生成的片段
start_timefloat否—可编辑片段的起始时间,单位为秒(0–240)
start_time_relative_toenum否startstart 或 end——start_time 的定位基准
end_timefloat否30可编辑片段的结束时间,单位为秒(0–240)
end_time_relative_toenum否startstart 或 end——end_time 的定位基准
lyricsstring否—重新生成片段的歌词。留空 = 由模型创作;[inst] = 无人声
seedint否-1可复现性

无需遮罩——区域完全由 start_time / end_time 定义(每个时间都可相对于音轨开头或结尾定位)。

调用

将音轨的 20–40 s 替换为新的过渡段:

runcomfy run acestep-ai/ace-step/audio-inpaint \
  --input '{
    "audio": "https://your-cdn.example/original-track.mp3",
    "tags": "indie pop, breakdown, piano only, soft, no drums",
    "start_time": 20,
    "end_time": 40,
    "lyrics": "[inst]"
  }' \
  --output-dir ./out

将结束时间锚定到音轨结尾(重写最后 15 s):

runcomfy run acestep-ai/ace-step/audio-inpaint \
  --input '{
    "audio": "https://your-cdn.example/song.mp3",
    "tags": "indie pop, fade, soft, ambient pad",
    "start_time": 15,
    "start_time_relative_to": "end",
    "end_time": 0,
    "end_time_relative_to": "end"
  }' \
  --output-dir ./out
提示
  • 匹配周围的标签——如果原音频是 "indie pop, electric guitar, 120 BPM",修补片段也应包含足够多的相同标签,以便自然衔接,而不是形成反差。
  • 修补窗口最长约为 4 min,即使源音频长达 60 min 也一样——选取明确的范围,不要覆盖整首音轨。
  • 使用 _relative_to: "end",无需计算精确时间戳即可定位到尾声或最后几秒。

路线 3:ACE Step 音频扩展

模型:acestep-ai/ace-step/audio-outpaint 目录:audio-outpaint

参数结构
字段类型必填默认值说明
audiostring是—MP3 / WAV / FLAC 的 HTTPS URL。最长 60 min
tagsstring是—用于引导扩展片段的标签
extend_before_durationfloat否0原音频之前新增音频的时长(秒)(0–240)
extend_after_durationfloat否30原音频之后新增音频的时长(秒)(0–240)
lyricsstring否—扩展片段的可选歌词
seedint否-1可复现性
调用

将 30 s 的副歌段扩展为 2 min 的版本(添加 30 s 前奏 + 60 s 尾奏):

runcomfy run acestep-ai/ace-step/audio-outpaint \
  --input '{
    "audio": "https://your-cdn.example/hook-30s.mp3",
    "tags": "indie pop, electric guitar, drums, build-up before chorus, fade outro",
    "extend_before_duration": 30,
    "extend_after_duration": 60,
    "lyrics": "[inst]"
  }' \
  --output-dir ./out

仅添加渐弱结尾(不向前扩展):

runcomfy run acestep-ai/ace-step/audio-outpaint \
  --input '{
    "audio": "https://your-cdn.example/track.mp3",
    "tags": "ambient pad, soft fade, low volume tail",
    "extend_before_duration": 0,
    "extend_after_duration": 20
  }' \
  --output-dir ./out
提示
  • 标签描述的是扩展部分,而非原音频——新的片段应该听起来如何?
  • 一次调用即可双向扩展——同时设置 extend_before_duration 和 extend_after_duration,即可一次性添加前奏和尾奏。
  • 总时长不要超过 4 min——如果原音频为 3 min,最多可总计添加 1 min。

何时选择 ACE Step 而非 ElevenLabs Music

ACE Step 和 ElevenLabs Music 是不同的工具:

维度ACE StepElevenLabs Music
成本$0.0002–0.0003 / s$0.0083 / s(约贵 27 倍)
许可开放权重(Apache 2.0)商业服务,由 ElevenLabs 托管
多语言人声50 多种语言(1.5 变体)强大的多语言支持
结构化歌词[Verse]/[Chorus]/[Bridge] 标记[Verse]/[Chorus]/[Bridge] 标记
单次调用最长时长240 s(4 分钟)300 s(5 分钟)
修补 / 扩展支持(基于时间范围)不支持
标签驱动的创作支持(标签是必填字段)风格属于自由文本提示词的一部分
最适用场景对成本敏感的批量生成、草稿、修补 / 扩展工作流、开放权重流程高品质人声歌曲片段、精修的商业成品

低成本草稿模式:使用 ACE Step 起草不同的标签组合 → 确定风格 → 如果需要精修的商业成品,则使用 ElevenLabs Music 进行最终渲染。

如需根据意图自动选择工具的路由技能,请在其发布后查看 ai-music。


常见模式

对成本敏感的背景音乐库
  • 路线 1(ACE Step 基础版):使用多种标签组合,每段 60–90 s,[inst]
多语言发布(同一首歌,多种语言)
  • 路线 1(ACE Step 1.5):使用相同标签,按语言替换 lyrics
修复段落(副歌不理想 → 新副歌)
  • 路线 2(audio-inpaint):将 start_time / end_time 设为问题段落的前后范围,并使用与歌曲风格相符的标签
片段 → 完整曲目
  • 路线 3(audio-outpaint):为精炼的 30 s 片段添加前奏和尾奏
游戏循环背景音乐
  • 路线 1(ACE Step 基础版):在标签中加入“无缝循环、律动一致”,时长 60–120 s

浏览完整目录


退出代码

代码含义
0成功
64CLI 参数错误
65输入 JSON 错误 / 架构不匹配
69上游 5xx 错误
75可重试:超时 / 429
77未登录或令牌被拒绝

完整参考:docs.runcomfy.com/cli/troubleshooting。

工作原理

该技能会根据用户意图,从四个 ACE Step 端点中选择一个——从头生成(t2a 基础版或 1.5)、重新生成某个时间范围(inpaint),或扩展画布(outpaint)——并使用匹配的 JSON 请求体调用 runcomfy run。CLI 会向 RunComfy Model API 发送 POST 请求、轮询请求状态,并将生成的音频文件下载到 --output-dir。

安全与隐私

  • 仅通过经过验证的包管理器安装。 使用 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 注入):提示词和音频 URL 会通过 --input 作为 JSON 字符串传递。CLI 不会对提示词内容进行 shell 展开;它会通过 HTTPS 将 JSON 正文直接传输到 Model API。提示词内容不存在 shell 注入攻击面。
  • 间接提示词注入(第三方内容):用于修复 / 扩展的源 audio URL 不可信——嵌入的隐写指令或异常 EXIF 信息可能影响生成。Agent 的缓解措施:
    • 仅导入用户明确为此任务提供的音频 URL。
    • 如果输出偏离提示词,应怀疑源音频。
  • 歌词来源:如果用户提供歌词,请确认他们拥有相关权利。围绕受版权保护的歌词生成音乐由操作人员负责。
  • 出站端点(允许列表):仅限 model-api.runcomfy.net 和 *.runcomfy.net / *.runcomfy.com。无遥测,无回调。
  • 生成文件大小上限:CLI 会中止任何超过 2 GiB 的单个下载。
  • bash 使用范围:声明为 allowed-tools: Bash(runcomfy *)。此技能仅调用 runcomfy <subcommand>;安装命令仅供操作人员一次性设置。

另请参阅

评论

支持 Markdown