音乐与音效异步任务

歌手风格

从你的歌里提取歌手的声音和唱腔,或上传自己的清唱,生成专属歌手;之后写歌时直接选用

模型信息

模型编码music-persona(请求里的 model 字段)
能力类型音乐与音效,产出音色
调用方式异步任务:提交后立即返回任务编号,完成后查询或接收 Webhook 回调
最长处理时间20 分钟,超时按失败处理并全额退回点数(任务 error.code 为 timeout)
适用场景歌手、专属声音、唱腔

计费说明

当前显示原价。登录秒做账号后刷新本页,会员看到会员价,渠道看到所属等级价。

规格计价单位原价(点)约合人民币
从哪里来 从我的歌曲提取mode=song每次52¥0.52
从哪里来 用我的声音mode=voice每次40¥0.40
  • 每次调用按固定数量计费。
  • 不同规格单价不同,规格由参数 mode 决定。
  • 提交时按报价冻结,成功后按报价扣点;失败、超时、取消全额退回。
  • 约合人民币按 1 元 = 100 点折算。适用价格规则见计费与点数。

接口地址

POSThttps://api.miaozuo.cn/v1/tasks

提交后用 GET https://api.miaozuo.cn/v1/tasks/{id} 查询结果,或通过 Webhook 接收回调。任务接口的通用说明见任务查询。

请求参数

字段类型必填说明
modelstring是固定为 music-persona
inputobject是模型参数,见下表(也接受字段名 params)
webhook_urlstring否任务结束时回调的 HTTPS 地址
metadataobject否自定义键值,原样回显;最多 16 个键,值为不超过 512 字的字符串

input 参数

字段类型必填取值范围默认值说明
modestring是"song"(从我的歌曲提取)、"voice"(用我的声音)"song"从哪里来 参与计价
namestring是1 ~ 20 个字符—歌手名称
songstring(文件地址)否音频地址—选择作品。选择一首人声清晰的歌曲。仅当 mode(从哪里来)为 "song" 时有效
startnumber否0 ~ 600 秒—人声片段开始。选一段 10–30 秒、人声清晰的片段;不填则自动选取。仅当 mode(从哪里来)为 "song" 时有效
endnumber否0 ~ 600 秒—人声片段结束。仅当 mode(从哪里来)为 "song" 时有效
audiostring(文件地址)否音频地址,单个不超过 50MB—声音样本。10 秒到 4 分钟的单人清唱或说话录音,mp3 / wav,避免背景音乐和噪音。仅当 mode(从哪里来)为 "voice" 时有效
descriptionstring否最多 100 个字符—描述(可选)
组合规则
  • 请选择一首作品
  • 请上传声音样本

未定义的字段会被忽略,数字字符串会自动转成数字,缺省的字段按默认值补齐。文件类参数请先用 文件上传拿到秒做地址,也可以直接传可公开访问的 HTTPS 地址。

请求示例

curl https://api.miaozuo.cn/v1/tasks \
  -H "Authorization: Bearer $MIAOZUO_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: order-20261009-0001" \
  -d '{
    "model": "music-persona",
    "input": {
      "mode": "song",
      "name": "清亮女声 · 小满",
      "song": "https://api.miaozuo.cn/upload/202610/3b1f6c0e9d2a4b7c8e5f1a2b3c4d5e6f.mp3"
    },
    "metadata": {
      "order_id": "1001"
    }
  }'

返回示例

受理成功返回 HTTP 200 和任务对象,状态为 queued,所需点数已冻结(示例数值按原价估算):

提交返回
{
  "id": "T261009170328CGM0GT",
  "object": "task",
  "model": "music-persona",
  "status": "queued",
  "created_at": "2026-10-09T17:03:28+08:00",
  "started_at": null,
  "finished_at": null,
  "input": {
    "mode": "song",
    "name": "清亮女声 · 小满",
    "song": "https://api.miaozuo.cn/upload/202610/3b1f6c0e9d2a4b7c8e5f1a2b3c4d5e6f.mp3"
  },
  "points": {
    "frozen": "52.000",
    "charged": "0.000",
    "refunded": "0.000"
  },
  "output": null,
  "error": null,
  "metadata": {
    "order_id": "1001"
  }
}

完成后查询任务(或 Webhook 回调的 data):

GET /v1/tasks/{id}(成功)
{
  "id": "T261009170328CGM0GT",
  "object": "task",
  "model": "music-persona",
  "status": "succeeded",
  "created_at": "2026-10-09T17:03:28+08:00",
  "started_at": "2026-10-09T17:03:29+08:00",
  "finished_at": "2026-10-09T17:03:52+08:00",
  "input": {
    "mode": "song",
    "name": "清亮女声 · 小满",
    "song": "https://api.miaozuo.cn/upload/202610/3b1f6c0e9d2a4b7c8e5f1a2b3c4d5e6f.mp3"
  },
  "points": {
    "frozen": "52.000",
    "charged": "52.000",
    "refunded": "0.000"
  },
  "output": {
    "files": [],
    "voice_id": "voice_8fK2qX9mZ3pL"
  },
  "error": null,
  "metadata": {
    "order_id": "1001"
  }
}

返回字段

字段类型说明
idstring任务编号,形如 T261009170328CGM0GT
statusstringqueued / processing / succeeded / failed / canceled
inputobject校验并补齐默认值后的参数
pointsobject冻结、实扣、退回点数
output.voice_idstring秒做音色编号,可直接填进配音、数字人等模型的 voice 参数
errorobject失败原因 code、message;成功时为 null

完整字段见任务对象。

错误码

调用这个模型时常见的错误(都不扣点)。完整列表与任务失败原因见错误码。

HTTPerror.code说明
402insufficient_points点数(含授信额度)不足;不冻结、不开始生成
402key_quota_exceededKey 的额度已用完(额度可按日 / 周 / 月自动重置)
403permission_denied该 Key 的可调模型不包含这个模型
404model_unavailable模型不存在、已下架、未对开放 API 开放,或对你的渠道等级不可见
422invalid_params参数错误:缺少必填字段、类型或取值超出范围(details 里逐字段说明)
422content_rejected提示词或参考素材未通过内容安全审核;不扣点
429rate_limited每分钟请求数超过 Key 的限速,响应头带 Retry-After(秒)
429concurrency_limited进行中的任务与文本调用数超过 Key 或账户的并发上限

在线测试

在开放平台的在线测试页选择这个模型直接调用,不用写代码;测试按正常价格扣点。未登录会先进入登录页。