26j文档
试一试 →

创建自定义模型

使用 6–24 条参考音频创建可用于 Suno V6 生成的自定义模型

创建模型是异步任务。提交后先取得训练 task_id,轮询任务完成后再从 data.result.model_id 读取自定义模型 ID。

请求示例
curl --request POST \
  --url https://26j.cn/v1/music/generations/createModel \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "suno",
    "name": "温暖民谣模型",
    "audio_urls": [
      "https://example.com/ref-01.mp3",
      "https://example.com/ref-02.mp3",
      "https://example.com/ref-03.wav",
      "https://example.com/ref-04.m4a",
      "https://example.com/ref-05.mp3",
      "https://example.com/ref-06.mp3"
    ]
  }'
import requests

response = requests.post(
    "https://26j.cn/v1/music/generations/createModel",
    headers={"Authorization": "Bearer <token>"},
    json={
        "model": "suno",
        "name": "温暖民谣模型",
        "audio_urls": [
            "https://example.com/ref-01.mp3",
            "https://example.com/ref-02.mp3",
            "https://example.com/ref-03.wav",
            "https://example.com/ref-04.m4a",
            "https://example.com/ref-05.mp3",
            "https://example.com/ref-06.mp3",
        ],
    },
)
print(response.json())
const response = await fetch("https://26j.cn/v1/music/generations/createModel", {
  method: "POST",
  headers: {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    model: "suno",
    name: "温暖民谣模型",
    audio_urls: [
      "https://example.com/ref-01.mp3",
      "https://example.com/ref-02.mp3",
      "https://example.com/ref-03.wav",
      "https://example.com/ref-04.m4a",
      "https://example.com/ref-05.mp3",
      "https://example.com/ref-06.mp3"
    ]
  })
});
console.log(await response.json());

Authorizations

Authorizationstring必填

Bearer Token。访问 API Key 管理页面 获取 API Key。

Body

modelstring默认 suno

固定使用 suno。

namestring必填

自定义模型名称。去掉首尾空白后不能为空。

audio_urlsstring[]必填

6–24 条公网可访问的 HTTP(S) 音频直链,建议使用 MP3、WAV 或 M4A。每条 URL 都应直接返回音频文件,不能是需要登录的网页。

无效素材可能导致整个创建任务失败。本地文件请先使用项目的上传能力获得公网 URL;不要传本地路径或 blob: URL。

Response

codeinteger

响应状态码。

dataarray

提交结果。读取 data[0].task_id,再通过 GET /v1/music/tasks/{task_id} 查询训练状态。

响应示例
{
  "code": 200,
  "data": [
    {"status": "submitted", "task_id": "task_01M24YMN4EV04M84R5QYM77R1E"}
  ]
}
{
  "code": 200,
  "data": {
    "id": "task_01M24YMN4EV04M84R5QYM77R1E",
    "status": "completed",
    "progress": 100,
    "result": {
      "model_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "name": "温暖民谣模型"
    }
  }
}

使用创建的模型

完成后保存 result.model_id,后续在支持自定义模型的操作中作为 custom_model_id 使用,并省略 version 和 persona_id:

{
  "model": "suno",
  "custom_model_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "custom": true,
  "instrumental": false,
  "prompt": "[Verse]\n旧木吉他弹起新的旅程",
  "style": "acoustic folk, warm vocals",
  "max_mode": true,
  "audio_format": "mp3"
}

创建模型可能需要数分钟,最长约 20 分钟。自定义模型的实际可用时间可能变化,界面不应承诺固定的精确到期时间。创建模型与后续每次生成分别计费。

This documentation is built and hosted on Mintlify, a developer documentation platform.

© 2026 26j.cn · AI 模型中转站