模型简介
suno-v6 是 AI 音乐生成模型:用一句话描述音乐风格即可生成完整歌曲,也可以自己写歌词,或生成纯音乐。通过 OpenAI Chat Completions 接口调用。
快速信息
| 项目 | 说明 |
|---|---|
| 模型名称 | suno-v6 |
| 价格 | 1.3 元/次,一次最多生成 2 首歌 |
| 端点 | POST https://deepseektavern.com/v1/chat/completions |
| 生成耗时 | 3–8 分钟 |
| 长度限制 | 风格描述建议不超过 1000 字,歌词不超过 5000 字 |
必须开启流式
请求必须带 "stream": true。生成需要 3–8 分钟,不开流式会超时。流中会有 content 为空的保活 chunk,客户端要跳过。
获取 API Key
登录 DeepSeek Tavern 控制台,在「令牌管理」中创建 API Key。详细步骤参考:API 密钥获取指南。
Base URL 统一为 https://deepseektavern.com/v1,认证方式:Authorization: Bearer <你的API密钥>。下文示例中的 YOUR_API_KEY 请替换为你自己的 Key。
消息格式
用户消息内容就是音乐风格描述,有三种写法:
1. 只写风格(自动作词)
一首温柔的中文民谣,木吉他和口琴伴奏,女声,讲述夏夜和老朋友重逢
2. 自己写歌词
在风格描述后面另起一行写 [歌词],下面接完整歌词,支持 [Verse]、[Chorus]、[Bridge] 等段落标记:
国风流行,古筝与电子鼓融合,男声,大气磅礴
[歌词]
[Verse]
长安的风吹过千年城墙
灯火照亮归人的行囊
[Chorus]
月光落在剑上
我把故事唱给远方
[Bridge]
若有来生 仍愿策马少年郎
3. 纯音乐
在消息里加 [纯音乐]:
史诗感奇幻战斗配乐,交响乐团加合唱,节奏紧张 [纯音乐]
返回格式
流里的最后一条内容是 markdown 链接,每首歌一行,格式为:
🎵 [歌曲 1](https://...)
🎵 [歌曲 2](https://...)
歌曲链接请及时下载保存。
curl 示例
curl -N https://deepseektavern.com/v1/chat/completions \
--max-time 900 \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "suno-v6",
"stream": true,
"messages": [
{"role": "user", "content": "轻快的日系城市流行,合成器和贝斯,女声,夏日海边兜风"}
]
}'
-N 关闭缓冲以实时看到流式输出。等待期间会持续收到空 content 的保活数据,属于正常现象。
Python 流式示例(OpenAI SDK)
import re
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://deepseektavern.com/v1",
timeout=900, # 生成要 3-8 分钟
)
prompt = """抒情摇滚,失真吉他,男声,关于离开家乡追梦
[歌词]
[Verse]
背上旧吉他 走出小镇的站台
[Chorus]
就算前路有风雨 我也不回头"""
stream = client.chat.completions.create(
model="suno-v6",
stream=True, # 必须开启
messages=[{"role": "user", "content": prompt}],
)
full = ""
for chunk in stream:
if not chunk.choices:
continue
delta = chunk.choices[0].delta.content
if not delta: # 跳过空 content 的保活 chunk
continue
print(delta, end="", flush=True)
full += delta
# 最后一条内容形如:🎵 [歌曲 1](url)
urls = re.findall(r"\[歌曲 \d+\]\((https?://[^)]+)\)", full)
print("\n歌曲链接:", urls)
Python 示例:下载生成的歌曲
import requests
for i, url in enumerate(urls, 1):
with requests.get(url, stream=True, timeout=300) as r:
r.raise_for_status()
with open(f"song_{i}.mp3", "wb") as f:
for part in r.iter_content(1 << 16):
f.write(part)
print("已保存", f"song_{i}.mp3")
风格描述建议
- 曲风:民谣、流行、摇滚、国风、电子、爵士、交响、Lo-fi 等
- 乐器:木吉他、钢琴、古筝、合成器、弦乐
- 人声:男声 / 女声 / 合唱,或用
[纯音乐]去掉人声 - 情绪与主题:温柔、热血、伤感;歌曲在讲什么故事
- 风格描述建议不超过 1000 字,歌词不超过 5000 字
计费说明
| 项目 | 价格 |
|---|---|
| 每次生成 | 1.3 元(一次最多 2 首) |