task_id,再轮询任务状态,直到任务进入 SUCCESS 或 FAILED 终态。
音乐生成是自回归长任务,生成一首完整歌曲通常需要数十秒到数分钟。
服务地址
POST https://api.stepfun.com/v1/audio/music
能力范围
本次提供三个任务类型,覆盖四种用法:text_to_music 未提供 lyrics 时,服务端会自动生成歌词。
通用约定
请求头
统一错误响应
所有非 2xx 响应采用以下结构:error.type 做程序化判断,不要匹配 message 文本。
响应同时返回 x-should-retry 头:
- 参数、鉴权和资源类错误(400 / 401 / 404):
false - 速率限制和临时服务故障(429 / 500 / 503):
true - 额度类 429 重试无效,仍需根据
error.type单独处理。
data: 前缀。
提交音乐生成任务
POST https://api.stepfun.com/v1/audio/music/submit
请求参数
taskstringrequired
任务类型,支持text_to_music、music_cover和vocal_to_music。model_idstringrequired
音乐模型标识,固定填stepaudio-3-music-preview。captionstringrequired
曲风、人声、情绪、调式等风格描述。lyricsstringoptional
歌词,支持歌曲结构标签。music_cover和vocal_to_music必填;text_to_music不传时由服务端自动写词。instrumentalbooleanoptional
是否生成纯器乐,默认false,仅text_to_music支持。song_audiostringoptional
完整参考歌曲的 Base64 编码,music_cover必填。vocal_audiostringoptional
无伴奏干声的 Base64 编码,vocal_to_music必填。response_formatstringoptional
输出格式,支持wav、flac、opus、mp3和pcm,默认wav。sample_rateintegeroptional
输出采样率,默认48000;省略或传0时保持模型原生采样率。bit_rateintegeroptional
MP3 / Opus 比特率,单位为 kbps。lyrics_rewritebooleanoptional
是否改写传入的歌词,默认false。disable_caption_rewritebooleanoptional
是否跳过caption自动改写,默认false。max_tokensintegeroptional
生成 token 数上限,默认16000。temperaturenumberoptional
采样温度,默认0.85,暂不支持0。top_kintegeroptional
采样参数,默认80。top_pnumberoptional
采样参数,默认0.92。repetition_penaltynumberoptional
重复惩罚,默认1.08。
参数适用矩阵
参数说明
器乐与歌词
instrumental=true 时不得同时传入 lyrics。歌词中的 [Instrumental] 仅表示局部器乐段,不能代替顶层的 instrumental=true。
翻唱
music_cover 的旋律跟随参考歌曲,caption 控制风格、音色、编曲和情绪。建议传入与原曲演唱内容一致的歌词。
干声配乐
vocal_to_music 的旋律主要跟随干声,并保留输入干声的人声音色。干声实际演唱内容需要是 lyrics 的子集或全集。
Caption 改写
服务端默认将caption 改写为规范的英文 style prompt,并通过查询接口的 rewritten_caption 返回。
disable_caption_rewrite=true 不能与 lyrics_rewrite=true 同时使用;在非器乐 text_to_music 场景使用时,必须显式提供歌词。
输出时长
输出时长由模型决定,无法通过参数精确控制。同一输入多次生成的时长可能不同,通常为 1~3 分钟。歌词结构标签
歌词结构标签需要独占一行。 常用标签:[Intro][Verse 1][Pre-Chorus][Chorus 1][Bridge][Instrumental][Hook][Break][Drop][Ad-lib][Outro]
Caption 写法建议
caption 支持中文或英文,建议描述以下维度:
响应
task_id 用于查询任务结果和问题排查。
错误码
内容审核可能在提交阶段同步返回 451,也可能在任务执行阶段以
FAILED + error.stage=censor 返回。
调用示例
- 歌曲生成
- 纯器乐
- 歌曲翻唱
- 干声配乐
查询任务结果
POST https://api.stepfun.com/v1/audio/music/query
建议每 5 秒轮询一次,直到 status 进入终态;成功后请及时保存音频。
请求参数
任务状态
进行中响应
成功响应
失败响应
FAILED 是业务终态,HTTP 状态码仍为 200。
响应字段
失败阶段
查询错误码
查询示例
音频与输出约束
推荐使用 MP3 输出以降低响应体积。PCM 为无文件头裸流,需按 48 kHz、16 bit、立体声自行解析。