体验中心
体验中国电信星辰大模型效果
协议类型:WebSocket
| 环境 | 地址 |
|---|---|
| 公网 | wss://api-maas.teleai.com.cn/aipaas/voice/v1/weizStreamingSuperTts/streaming |
/aipaas/voice/v1/weizStreamingSuperTts/streamingWebSocketapplication/json采用请求头携带鉴权信息,在建立 WebSocket 连接时通过 Header 传递:
Authorization: <鉴权信息>
| 请求头 | 必填 | 说明 |
|---|---|---|
Content-Type |
是 | 内容类型,固定application/json |
X-APP-ID |
是 | 买家中心 → 已购能力 → 【X-APP-ID】 |
Device-Uuid |
是 | 设备uuid |
Authorization |
是 | 鉴权信息 |
| code | 说明 | 解决方法 |
|---|---|---|
101 |
成功 | 建链成功,开始语音识别 |
1000 |
成功 | 正常关闭 |
1002 |
失败 | 协议错误/联系服务台 |
1005 |
失败 | 异常断开 |
1006 |
失败 | 异常断开 |
4002 |
失败 | 服务异常,联系技术人员 |
4004 |
失败 | 服务异常,联系技术人员 |
| 修订日期 | 算法版本号 | 修订内容 |
|---|---|---|
| 2026-03-12 | V1.0.0 | 首次发布 |
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
req_id |
string | 是 | 请求全局唯一 ID,记录该值便于排查问题 |
text |
string | 是 | 待合成的文本,需要为 UTF-8 编码 |
format |
string | 否 | 音频编码格式,支持 PCM 格式,默认值:PCM |
sample_rate |
int | 否 | 音频采样率,支持 24000Hz、22050Hz、16000 Hz 和 8000 Hz,默认值:24000 |
voice |
string | 否 | 说话人,支持音色zhuoma,默认音色为 zhuoma(卫藏方言) |
volume |
int | 否 | 音量,取值范围:[0, 100],默认值:50 |
speech_rate |
float | 否 | 语速,取值范围:[0.5, 2.0],默认值:1.0 |
| 字段 | 类型 | 说明 |
|---|---|---|
code |
int | 状态码,见服务码说明 |
message |
string | 状态说明,见服务码说明 |
sid |
string | 会话全局唯一 id,用于记录本次会话 |
result |
object | 合成结果 |
result| 字段 | 类型 | 说明 |
|---|---|---|
audio |
string | 合成音频数据,经过 base64 编码 |
audio_len |
int | 合成音频长度,单位:ms |
is_end |
boolean | 标志位:true 最后一个合成片段;false 中间合成片段 |
请求示例:
{
"req_id": "3a87fe9793c9-4ebd-95d4-4ce2-a80c054b",
"text": "བཀྲ་ཤིས་བདེ་ལེགས་"
}
开始合成响应示例:
{
"code": 10000,
"message": "Success",
"sid": "4eHgiLCBhbGdvcml"
}
接收合成数据响应示例:
{
"code": 10000,
"message": "Success",
"result": {
"audio": "//6YYmNiDlSUXjZlDP8yADQAQ1E2ANKJOaTqFGUgIwDQAKAA==",
"audio_len": 2500,
"is_end": false
}
}
合成结束响应示例:
{
"code": 10000,
"message": "Success",
"result": {
"audio": "//6YYmNiDlSUXjZlDP8yADQAQ1E2ANKJOaTqFGUgIwDQAKAA==",
"audio_len": 2500,
"is_end": true
}
}
| 状态码 | 说明 | 描述 | 解决方法 |
|---|---|---|---|
10000 |
Success | 成功 | 执行下一步操作 |
10301 |
Parameter error | 参数错误 | 检查请求体是否符合接口协议 |
10302 |
Too many requests | 并发请求过多 | 联系商务,增加并发 |
10304 |
Parse request body fail | 请求格式错误 | 查看请求的 URL body 格式是否正确,参考接口文档 |
10503 |
Server connection time out | 服务连接超时 | 联系技术人员 |
10903 |
Synthesis failed | 合成失败 | 联系技术人员 |
import asyncio
import websockets
import json
# 配置环境变量
X_APP_ID = "yourAppId"
AUTHORIZATION = "yourAuthorization"
# 请求的URL
URL = "wss://api-maas.teleai.com.cn/aipaas/voice/v1/weizStreamingSuperTts/streaming"
# 请求数据
request_data = {
"req_id": "3a87fe9793c9-4ebd-95d4-4ce2-a80c054b",
"text": "བཀྲ་ཤིས་བདེ་ལེགས་",
"format": "PCM",
"sample_rate": 24000,
"voice": "zhuoma",
"volume": 50,
"speech_rate": 1.0
}
async def connect_websocket():
headers = {
"Content-Type": "application/json",
"Device-Uuid": "2018619061498245122",
"X-APP-ID": X_APP_ID,
"Authorization": AUTHORIZATION
}
try:
async with websockets.connect(URL, extra_headers=headers) as websocket:
print("连接已建立")
message = json.dumps(request_data)
await websocket.send(message)
while True:
response = await websocket.recv()
print(f"接收: {response}")
except Exception as e:
print(f"连接异常: {e}")
# 运行异步客户端
if __name__ == "__main__":
asyncio.run(connect_websocket())
import java.net.URI;
import java.util.HashMap;
import java.util.Map;
import com.alibaba.fastjson.JSONObject;
import org.java_websocket.client.WebSocketClient;
import org.java_websocket.drafts.Draft_6455;
import org.java_websocket.handshake.ServerHandshake;
/**
* 依赖:
* <dependency>
* <groupId>org.java-websocket</groupId>
* <artifactId>Java-WebSocket</artifactId>
* <version>1.5.3</version>
* </dependency>
* <dependency>
* <groupId>com.alibaba</groupId>
* <artifactId>fastjson</artifactId>
* <version>1.2.83</version>
* </dependency>
*/
public class WebSocketClientCase {
public static void main(String[] args) throws Exception {
// 算法调用地址
URI uri = URI.create("wss://api-maas.teleai.com.cn/aipaas/voice/v1/weizStreamingSuperTts/streaming");
// 设置请求头
Map<String, String> headers = new HashMap<>();
headers.put("Content-Type", "application/json");
headers.put("Device-Uuid", "2018619061498245122");
headers.put("X-APP-ID", "你实际的AppId");
headers.put("Authorization", "你实际的Authorization");
// 设置请求参数,请根据实际情况修改
String requestParam = "{\n" +
" \"req_id\": \"3a87fe9793c9-4ebd-95d4-4ce2-a80c054b\",\n" +
" \"text\": \"བཀྲ་ཤིས་བདེ་ལེགས་\",\n" +
" \"format\": \"PCM\",\n" +
" \"sample_rate\": 24000,\n" +
" \"voice\": \"zhuoma\",\n" +
" \"volume\": 50,\n" +
" \"speech_rate\": 1.0\n" +
"}";
// 创建WebSocket客户端实例
WebSocketClient client = new WebSocketClient(uri, new Draft_6455(), headers, 5000) {
@Override
public void onOpen(ServerHandshake handshake) {
System.out.println("连接已建立");
// 连接成功后发送消息
send(JSONObject.toJSONString(requestParam));
}
@Override
public void onMessage(String message) {
System.out.println("收到消息: " + message);
}
@Override
public void onClose(int code, String reason, boolean remote) {
System.out.println("连接关闭: " + reason);
}
@Override
public void onError(Exception ex) {
System.err.println("发生错误: " + ex.getMessage());
}
};
// 建立连接
client.connect();
// 保持程序运行
try {
Thread.sleep(10000);
} catch (InterruptedException e) {
e.printStackTrace();
}
// 关闭连接
client.close();
}
}