PRE-CS-ADAPTER API DOC
#
TTS 请求
#
POST /api/v2/request/tts
Request:
| 参数 | 类型 | 必填 | 说明 |
|---|
| provider_id | string | true | 供应商 ID,支持TTS1, TTS3, TTS4 |
| voice_id | string | true | 发音人 ID |
| language | string | false | 语言 |
| query | string | true | 待合成语音的文本内容 |
| ssml | boolean | false | 是否使用 SSML |
| timeout | int | false | 等待中控返回的超时时间,单位为 ms。如中控在超时时间内返回,直接返回 TTS 结果,否则返回 request_id |
| pitch_offset | float | false | 音调,数值越大越尖锐,越低越低沉,支持范围 [-60, 60];默认 0 |
| speed_ratio | float | false | 语速,数值越大语速越慢,支持范围 [0.5, 2];默认 1.0 |
| volume | int | false | 音量,数值越大声音越大,支持范围 [1, 400];默认 100 |
| style | string | false | 声音风格,不同发音人支持的风格不同,请参考供应商文档 |
{
"provider_id": "TTS3",
"voice_id": "xiaoling",
"query": "待合成语音的文本内容xxxxxx",
"timeout": 3000,
"pitch_offset": 0.0,
"speed_ratio": 1.0,
"volume": 100,
"style": "default"
}
Response:
| 字段 | 类型 | 说明 |
|---|
| code | int | code 码,见状态表 |
| message | string | 状态说明 |
| data | object | 结果数据 |
| data.status | int | 状态,见状态表 |
| data.request_id | string | 请求 ID |
| data.result | object | TTS 合成结果,如中控在超时时间内返回,返回此字段否则此字段为空{} |
| data.result.pcm_url | string | TTS 合成音频 PCM 文件 URL |
| data.result.wav_url | string | TTS 合成音频 WAV 文件 URL |
| data.result.mp3_url | string | TTS 合成音频 MP3 文件 URL |
| data.result.srt_url | string | TTS 音频字幕 SRT 文件 URL |
| data.result.phone_url | string | TTS 音素文件 URL |
case1:请求超时
{
"code": 0,
"message": "created",
"data": {
"status": 1000,
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
"result": {}
}
}
case2:请求未超时,请求成功
{
"code": 0,
"message": "ok",
"data": {
"status": 0,
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
"result": {
"pcm_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.pcm",
"wav_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.wav",
"mp3_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.mp3",
"srt_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.srt",
"phone_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.phone"
}
}
}
TTS 状态查询接口
#
POST /api/v2/result/tts
Request:
| 参数 | 类型 | 必填 | 说明 |
|---|
| request_id | string | true | 请求 ID |
{
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7"
}
Response:
| 字段 | 类型 | 说明 |
|---|
| code | int | code 码,见状态表 |
| message | string | 状态说明 |
| data | object | 结果数据 |
| data.status | int | 状态,见状态表 |
| data.request_id | string | 请求 ID |
| data.result | object | TTS 合成结果,如中控在超时时间内返回,返回此字段否则此字段为空{} |
| data.result.pcm_url | string | TTS 合成音频 PCM 文件 URL |
| data.result.wav_url | string | TTS 合成音频 WAV 文件 URL |
| data.result.mp3_url | string | TTS 合成音频 MP3 文件 URL |
| data.result.srt_url | string | TTS 音频字幕 SRT 文件 URL |
| data.result.phone_url | string | TTS 音素文件 URL |
case1:还在处理
{
"code": 0,
"message": "created",
"data": {
"status": 1000,
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
"result": {}
}
}
case2: 已处理完毕
{
"code": 0,
"message": "ok",
"data": {
"status": 0,
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
"result": {
"pcm_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.pcm",
"wav_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.wav",
"mp3_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.mp3",
"srt_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.srt",
"phone_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.phone"
}
}
}
ASR 请求
#
POST /api/v2/request/asr
Request:
Media Type: multipart/form-data
| 参数 | 类型 | 必填 | 说明 |
|---|
| file | file | true | 待识别文本的音频文件 |
Response:
| 字段 | 类型 | 说明 |
|---|
| code | int | code 码,见状态表 |
| message | string | 状态说明 |
| data | object | 结果数据 |
| data.status | int | 状态,见状态表 |
| data.request_id | string | 请求 ID |
{
"code": 0,
"message": "created",
"data": {
"status": 1000,
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
"result": {}
}
}
ASR 状态查询接口
#
POST /api/v2/result/asr
Request:
| 参数 | 类型 | 必填 | 说明 |
|---|
| request_id | string | true | 请求 ID |
{
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7"
}
Response:
| 字段 | 类型 | 说明 |
|---|
| code | int | code 码,见状态表 |
| message | string | 状态说明 |
| data | object | 结果数据 |
| data.status | int | 状态,见状态表 |
| data.request_id | string | 请求 ID |
| data.result | object | ASR 请求结果,如中控在超时时间内返回,返回此字段,否则此字段为空{} |
| data.result.srt_url | string | ASR 音频字幕 SRT 文件 URL |
| data.result.text | string | ASR 识别结果 |
case1:还在处理
{
"code": 0,
"message": "created",
"data": {
"status": 1000,
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
"result": {}
}
}
case2: 已处理完毕
{
"code": 0,
"message": "ok",
"data": {
"status": 0,
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
"result": {
"srt_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.srt",
"text": "ASR识别结果"
}
}
}
图片生成 获取可选参数
#
GET /api/v2/config/image
Reponse:
| 字段 | 类型 | 说明 |
|---|
| code | int | code码,见状态表 |
| message | string | 状态说明 |
| data | object | 结果数据 |
| data.model_name | string list | 可选模型列表 |
| data.n_images | object | 可选生成图片数量 |
| data.n_images.min | object | 可选生成图片数量最小值(包含) |
| data.n_images.max | int | 可选生成图片数量最大值(包含) |
| data.scale | object | 可选文本控制力度 |
| data.scale.min | int | 可选文本控制力度最小值(包含) |
| data.scale.max | int | 可选文本控制力度最大值(包含) |
| data.seed | object | 可选种子范围 |
| data.seed.min | int | 可选种子范围最小值(包含) |
| data.seed.max | int | 可选种子范围最大值(包含) |
| data.output_size | object list | 可选输出图片比例及尺寸 |
| data.output_size.ratio | string | 可选输出图片比例 |
| data.output_size.px | string list | 可选输出图片尺寸 |
{
"code": 0,
"message": "ok",
"data": {
"model_name": [
"Artist 0.2.3 Beta",
"Moxin",
"Dalcefo",
"RPG游戏风",
"动漫汉服风",
"连环画风",
"Q版手办风",
"剪纸风",
"水彩风",
"中国戏曲女旦风"
],
"n_images": {
"min": 1,
"max": 8
},
"scale": {
"min": 1,
"max": 20
},
"seed": {
"min": 0,
"max": 9999999
},
"output_size": [
{
"ratio": "1:1",
"px": [
"960x960",
"1280x1280",
"2560x2560",
"4096x4096"
],
},
{
"ratio": "2:3",
"px": [
"768x1152",
"1024x1536",
"2048x3072",
"4096x6144"
],
},
{
"ratio": "3:2",
"px": [
"1152x768",
"1536x1024",
"3072x2048",
"6144x4096"
]
}
]
}
}
图片生成 请求
#
POST /api/v2/request/image
Request:
| 参数名称 | 类型 | 必填 | 默认值 | 含义 |
|---|
| model_name | string | true | Artist_V0.1.3 | 模型名称(可选值: Artist_V0.1.3, Albedo_V0.5.2, Moxin…) |
| prompt | string | true | "" | 用于生成图片的特征描述,如:“one girl,beautiful” |
| neg_prompt | string | false | "" | 特征的反向描述,如:“unsafe” |
| n_images | int | true | 2 | 生成图片数量 |
| scale | int | true | 7 | 文本控制力度(1-20) |
| select_seed | int | false | -1 | 随机数种子 |
| output_size | string | true | 960x960 | 图片的输出尺寸,如:“960x960” |
| init_img | string | false | "" | 输入图片,url形式,若有即为i2i(图生图),无即为t2i(文生图) |
| controlnet_enabled | bool | false | false | 是否启用controlnet |
| add_prompt | bool | false | false | 是否使用gpt进行描述词优化 |
Response:
| 字段 | 类型 | 说明 |
|---|
| code | int | code码,见状态表 |
| message | string | 状态说明 |
| data | object | 结果数据 |
| data.status | int | 状态,见状态表 |
| data.request_id | string | 请求ID |
{
"code": 0,
"message": "created",
"data": {
"status":1000,
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
"result": {}
}
}
图片生成 状态查询接口
#
POST /api/v2/result/image
Request:
| 参数 | 类型 | 必填 | 说明 |
|---|
| request_id | string | true | 请求ID |
{
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7"
}
Response:
| 字段 | 类型 | 说明 |
|---|
| code | int | code码,见状态表 |
| message | string | 状态说明 |
| data | object | 结果数据 |
| data.status | int | 状态,见状态表 |
| data.request_id | string | 请求ID |
| data.result | object | 图片生成请求结果,如Makamaka在超时时间内返回,返回此字段,否则此字段为空{} |
| data.result.images | object list | 图片列表 |
| data.result.images.large | string | 大尺寸图片URL,供下载 |
| data.result.images.middle | string | 中尺寸图片URL,供预览 |
| data.result.select_seed | int | 随机数种子 |
| data.result.wait_time | int | 前方等待人数 |
case1:还在处理
{
"code": 0,
"message": "created",
"data": {
"status":1000,
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
"result": {}
}
}
case2: 已处理完毕
{
"code": 0,
"message": "ok",
"data": {
"status":0,
"request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
"result": {
"images": [
{
"large": "https://bkmk.oss-accelerate.aliyuncs.com/8c139b38-e503-11ed-8282-00163e008cc0_00000.jpg?OSSAccessKeyId=LTAI5tPynodLHeacT1J5SmWh&Expires=317042603900&Signature=psEsCFQWFSTEVSPeVStgMZydnZ8%3D",
"middle": "https://bkmk.oss-accelerate.aliyuncs.com/8c139b38-e503-11ed-8282-00163e008cc0_00000.mid.jpg?OSSAccessKeyId=LTAI5tPynodLHeacT1J5SmWh&Expires=317042603901&Signature=ouVXsK%2FE69rcWOz701d42tovfsA%3D"
},
{
"large": "https://bkmk.oss-accelerate.aliyuncs.com/8c139b38-e503-11ed-8282-00163e008cc0_00001_E7Q1aZ0z.jpg?OSSAccessKeyId=LTAI5tPynodLHeacT1J5SmWh&Expires=317042603882&Signature=yAChks0ij5%2BRRTGWIv9xUNYSZCg%3D",
"middle": "https://bkmk.oss-accelerate.aliyuncs.com/8c139b38-e503-11ed-8282-00163e008cc0_00001_E7Q1aZ0z.jpg?OSSAccessKeyId=LTAI5tPynodLHeacT1J5SmWh&Expires=317042603882&Signature=yAChks0ij5%2BRRTGWIv9xUNYSZCg%3D"
}
],
"select_seed": -1,
"wait_time": 1
}
}
}
状态表
#
TTS 相关状态
#
TTS 请求响应状态
#
| status | 说明 |
|---|
| 0 | 处理成功 |
| 1000 | 处理中 |
| 1002 | 拒绝:必填参数缺失 |
| 1003 | 拒绝:非法的参数–发音人为空 |
| 1004 | 拒绝:非法的参数–合成文本为空 |
| 1102 | 请求失败,未超时:未连接到中控 |
| 1103 | 请求失败,未超时:中控繁忙 |
| 1104 | 请求失败,未超时:中控内部错误 |
| 1105 | 请求失败,未超时:中控请求超时 |
TTS 请求查询状态
#
| status | 说明 |
|---|
| 0 | 成功 |
| 1000 | 处理中 |
| 1102 | 失败:未连接到中控 |
| 1103 | 失败:中控繁忙 |
| 1104 | 失败:中控内部错误 |
| 1105 | 失败:请求超时 |
| 1106 | 失败:未知的 request ID |
ASR 相关状态
#
ASR 请求响应状态
#
| status | 说明 |
|---|
| 0 | 请求成功 |
| 1000 | 请求超时,已创建了新的中控请求 |
| 2001 | 拒绝:必填参数缺失 |
ASR 请求查询状态
#
| status | 说明 |
|---|
| 0 | 成功 |
| 1000 | 处理中 |
| 2102 | 失败:未连接到中控 |
| 2103 | 失败:中控繁忙 |
| 2104 | 失败:中控内部错误 |
| 2105 | 失败:请求超时 |
| 2107 | 失败:未知的 request ID |
| 2108 | 失败:音频格式错误 |
图片生成 相关状态
#
图片生成 请求响应状态
#
| status | 说明 |
|---|
| 0 | 处理成功 |
| 1000 | 处理中 |
| 4001 | 拒绝:必填参数缺失 |
| 4101 | 请求失败:未连接到Makamaka |
| 4102 | 请求失败:内部错误 |
| 4103 | 请求失败:请求超时 |
图片生成 请求查询状态
#
| status | 说明 |
|---|
| 0 | 成功 |
| 1000 | 处理中 |
| 4101 | 请求失败:未连接到Makamaka |
| 4102 | 请求失败:内部错误 |
| 4103 | 请求失败:请求超时 |
| 4104 | 请求失败:未知的request ID |