接口概述

本接口兼容OpenAI TTS接口规范,支持通过HTTP POST请求将文本转换为高质量语音,支持多种模型、音色、音频格式配置,同时兼容主流国产模型(如IndexTTS、ChatTTS、CosyVoice等)的扩展参数,满足不同场景下的语音合成需求。
TTS语音合成(OpenAI兼容)接口说明

支持模型

模型名称 说明
Duix.Heygem 硅基智能
MegaTTS3 字节跳动与浙江大学合作开发
fish-speech-1.2-sft Fish Speech
GLM-TTS 智谱 GLM TTS
FunAudioLLM-CosyVoice-300M 阿里 CosyVoice
Step-Audio-TTS-3B Stepfun-AI
IndexTTS-2 哔哩哔哩
ChatTTS ChatTTS
CosyVoice2 阿里 CosyVoice v2
IndexTTS-1.5 哔哩哔哩
MiniMax/speech-2.8-hd MiniMax 高清 TTS
MiniMax/speech-02-hd MiniMax 高清 TTS
MiniMax/speech-2.8-turbo MiniMax 快速 TTS
MiniMax/speech-02-turbo MiniMax 快速 TTS
cosyvoice-v3.5-plus CosyVoice v3.5 增强版
cosyvoice-v3.5-flash CosyVoice v3.5 快速版
cosyvoice-v3-plus CosyVoice v3 增强版
cosyvoice-v3-flash CosyVoice v3 快速版
cosyvoice-v2 CosyVoice v2
qwen3-tts-vd-2026-01-26 通义 TTS 语音对话
qwen3-tts-vc-2026-01-22 通义 TTS 语音克隆
qwen3-tts-flash 通义 TTS 快速版

请求地址

本接口兼容 OpenAI 的接口规范,可直接用 OpenAI SDK 进行调用。

POST https://www.yuntts.com/api/v1/audio/speech

请求头

参数名 类型 必填 说明
Content-Type string application/json
Authorization string Bearer {API_KEY}

请求参数

IndexTTS-1.5

参数名 说明 示例值
input 待合成语音的文本 这是一段测试文本
model 语音合成模型 IndexTTS-1.5
prompt_audio_url 声音参考音频链接 https://www.yuntts.com/tools/tts/1769446289.mp3
voice 音色 alloy

ChatTTS

参数名 说明 示例值
input 需要合成的文本 这是一段测试文本
model 语音合成模型 ChatTTS
voice 音色 alloy
prompt 口语化风格控制 [oral_1]
temperature 生成随机性 0.2
top_P 核采样概率 0.7
top_K 候选词数量 20

IndexTTS-2

参数名 说明 示例值
input 待合成语音文本 这是一段测试文本
model 语音合成模型 IndexTTS-2
voice 音色 alloy
prompt_audio_url 声音参考音频链接 https://www.yuntts.com/jay_prompt.wav
prompt_text 参考音频对应文本 对我来讲是一种荣幸,但是也是压力蛮大的。不过我觉得是一种呃很好的一个挑战。
emo_audio_prompt_url 情感参考音频链接 https://www.yuntts.com/emo_sad.wav
emo_alpha 情感强度系数 0.5

CosyVoice2-0.5B

参数名 说明 示例值
input 待合成语音的文本 这是一段测试文本
model 语音合成模型 CosyVoice2
voice 音色 alloy
prompt_wav_url 零样本参考音频链接 https://www.yuntts.com//prompt.wav
prompt_text 参考音频对应的文本 希望你以后能够做的比我还好呦。
instruct_text 风格指令描述 带有粤语口音,语速适中

Step-Audio-TTS-3B

参数名 说明 示例值
input 待合成语音文本 这是一段测试文本
model 语音合成模型 Step-Audio-TTS-3B
voice 音色 alloy
prompt_audio_url 参考音色音频链接 https://www.yuntts.com//prompt.wav
prompt_text 参考音频对应文本 我来测试

fish-speech-1.2-sft

参数名 说明 示例值
input 待合成语音文本 这是一段测试文本
model 语音合成模型 fish-speech-1.2-sft
voice 音色 alloy
voice_url 音色模型文件链接(.pt 格式)

MegaTTS3

参数名 说明 示例值
input 待合成语音文本 这是一段测试文本
model 语音合成模型 MegaTTS3
voice 音色 alloy
prompt_language 参考音频语言 zh
intelligibility_weight 清晰度权重 1.6
similarity_weight 相似度权重 2.5

CosyVoice

参数名 说明 示例值
model 语音合成模型 cosyvoice-v3-flash
text 待合成语音文本 这是一段测试文本
voice 音色 longanyang
format 音频格式 wav
sample_rate 采样率 24000

MiniMax

参数名 说明 示例值
model 语音合成模型 MiniMax/speech-2.8-hd
text 待合成语音文本 今天是不是很开心呀(laughs),当然了!
voice_id 音色ID male-qn-qingse
speed 语速 1
vol 音量 1
pitch 音调 0
emotion 情感 happy
sample_rate 音频采样率 32000
bitrate 音频比特率 128000
format 音频格式 mp3
channel 音频声道数 1
tone 自定义读音字典 处理/(chu3)(li3)、危险/dangerous
subtitle_enable 是否开启字幕 false

Qwen-TTS

参数名 说明 示例值
model 语音合成模型 qwen3-tts-flash
text 待合成语音文本 这是一段测试文本
voice 音色 Cherry
instructions 语音风格指令(仅指令模型支持) 语速较快,带有明显的上扬语调,适合介绍时尚产品。
optimize_instructions 是否优化指令(仅指令模型支持) True

响应格式

成功响应

Content-Type: audio/mpeg (或其他音频格式)

响应体为二进制音频数据。

错误响应

{
  "code": 400,
  "error": "rest_invalid_param",
  "message": "input/inputs/text is required"
}

计费说明

  1. 字符计算: 接口自动计算请求文本的字符数(支持中文、英文、标点符号)
  2. 价格配置: 不同模型有不同的价格,具体可查看语音合成服务计费说明
  3. 用户折扣: VIP 用户享受 9 折优惠,BoosVIP 用户享受 8 折优惠
  4. 最低扣费: 每次请求最低扣费 0.001 元

请求示例

Python 请求示例

from openai import OpenAI

client = OpenAI(
    base_url="https://www.yuntts.com/api/v1",
    api_key="YOUR_API_KEY"
)

response = client.audio.speech.create(
    input="你好,欢迎使用语音合成服务。今天天气真不错!",
    model="IndexTTS-2",
    response_format="mp3"
)

# 保存音频文件
with open("output.mp3", "wb") as f:
    f.write(response.content)

cURL 请求示例

curl https://www.yuntts.com/api/v1/audio/speech 
  -X POST 
  -H "Content-Type: application/json" 
  -H "Authorization: Bearer YOUR_API_KEY" 
  -d '{
    "input": "你好,欢迎使用语音合成服务。今天天气真不错!",
    "model": "IndexTTS-2",
    "response_format": "mp3"
  }' 
  --output output.mp3

PHP 请求示例

<?php

$url = 'https://www.yuntts.com/api/v1/audio/speech';
$headers = array(
    'Content-Type: application/json',
    'Authorization: Bearer YOUR_API_KEY'
);

$data = array(
    'input' => '你好,欢迎使用语音合成服务。今天天气真不错!',
    'model' => 'IndexTTS-2',
    'response_format' => 'mp3'
);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

$response = curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$curl_error = curl_error($ch);
curl_close($ch);

// 保存音频文件
file_put_contents('output.mp3', $response);

JavaScript (Node.js) 请求示例

const https = require('https');
const fs = require('fs');

const data = JSON.stringify({
    input: '你好,欢迎使用语音合成服务。今天天气真不错!',
    model: 'IndexTTS-2',
    response_format: 'mp3'
});

const options = {
    hostname: 'https://www.yuntts.com',
    port: 80,
    path: '/api/v1/audio/speech',
    method: 'POST',
    headers: {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer YOUR_API_KEY',
        'Content-Length': data.length
    }
};

const req = https.request(options, (res) => {
    const chunks = [];
    res.on('data', (chunk) => chunks.push(chunk));
    res.on('end', () => {
        const buffer = Buffer.concat(chunks);
        fs.writeFileSync('output.mp3', buffer);
    });
});

req.write(data);
req.end();

错误码

错误码 错误信息 说明
400 rest_invalid_param 请求参数错误
401 empty_key / invalid_key API 密钥无效
403 insufficient_balance 余额不足
500 rest_invalid_config 平台配置错误
500 rest_server_error 代理请求失败

注意事项

  1. 超时设置: 默认超时时间为 60 秒,如需更长的处理时间请在代理层面调整
  2. 字符编码: 请确保输入文本为 UTF-8 编码
  3. 音频格式: 不同平台支持的音频格式可能不同,请根据实际需求选择
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。