CosyVoice 服务端事件 - 千问云
跳转到主要内容
实时

CosyVoice 客户端事件

CosyVoice 实时语音合成 WebSocket 客户端事件参考

用户指南: 关于模型介绍和选型建议请参见语音合成

run-task

说明:启动语音合成任务,设置模型、音色、采样率等参数。 发送时机:建立 WebSocket 连接后立即发送。 响应事件:服务端返回 task-started 事件后才能发送后续指令。
Example
{
    "header": {
        "action": "run-task",
        "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
        "streaming": "duplex"
    },
    "payload": {
        "task_group": "audio",
        "task": "tts",
        "function": "SpeechSynthesizer",
        "model": "cosyvoice-v3-flash",
        "parameters": {
            "text_type": "PlainText",
            "voice": "longanyang",
            "format": "mp3",
            "sample_rate": 22050,
            "volume": 50,
            "rate": 1.0,
            "pitch": 1.0,
            "enable_ssml": false
        },
        "input": {}
    }
}
object
body
必填
消息头。
object
body
必填
请求体。

continue-task

说明:用于发送待合成文本。可一次性发送,也可分段按顺序发送。 发送时机:在接收到服务端返回的 task-started 事件后。 数量限制
  • 单次调用最多发送 20000 字符
  • 累计最多发送 200000 字符
  • 发送间隔不得超过 23 秒,否则连接超时
Example
{
    "header": {
        "action": "continue-task",
        "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
        "streaming": "duplex"
    },
    "payload": {
        "input": {
            "text": "床前明月光,疑是地上霜"
        }
    }
}
object
body
必填
消息头。
object
body
必填
请求体。

finish-task

说明:通知服务端文本发送完毕,请求结束任务。 发送时机:所有文本发送完毕后立即发送。 响应事件:服务端返回 task-finished 事件。
Example
{
    "header": {
        "action": "finish-task",
        "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
        "streaming": "duplex"
    },
    "payload": {
        "input": {}
    }
}
object
body
必填
消息头。
object
body
必填
请求体。
实时

CosyVoice 服务端事件

CosyVoice 实时语音合成 WebSocket 服务端事件参考

用户指南: 关于模型介绍和选型建议请参见语音合成

task-started

当客户端发送 run-task 指令后,服务端返回 task-started 事件,标志任务已成功开启。只有在接收到该事件后,客户端才能继续发送后续指令。
Example
{
  "header": {
    "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
    "event": "task-started",
    "attributes": {}
  },
  "payload": {}
}
字段类型说明
header.task_idstring客户端生成的任务 ID。
header.eventstring事件类型,固定为 task-started
payloadobject无内容,为空对象。

result-generated

客户端发送文本后,服务端持续返回 result-generated 事件。该事件返回句子元信息。
  • sentence-begin
  • sentence-synthesis
  • sentence-end
{
  "header": {
    "task_id": "3f2d5c86-0550-45c0-801f-xxxxxxxxxx",
    "event": "result-generated",
    "attributes": {}
  },
  "payload": {
    "output": {
      "sentence": {
        "index": 0,
        "words": []
      },
      "type": "sentence-begin",
      "original_text": "床前明月光,"
    }
  }
}
字段类型说明
header.task_idstring客户端生成的任务 ID。
header.eventstring事件类型,固定为 result-generated
payload.output.typestring子事件类型,取值:sentence-begin(句子开始,返回待合成的文本内容)、sentence-synthesis(标识音频数据块,每个事件后立即通过 WebSocket binary 通道传输一个音频数据帧)、sentence-end(句子结束,返回文本内容和累计字符数)。
payload.output.sentence.indexinteger句子编号,从 0 开始。
payload.output.sentence.wordsarray字级别时间戳信息数组。
payload.output.sentence.words[].textstring字的文本内容。
payload.output.sentence.words[].begin_indexinteger字在句子中的开始位置索引,从 0 开始。
payload.output.sentence.words[].end_indexinteger字在句子中的结束位置索引,从 1 开始。
payload.output.sentence.words[].begin_timeinteger字对应音频的开始时间戳,单位:毫秒。
payload.output.sentence.words[].end_timeinteger字对应音频的结束时间戳,单位:毫秒。
payload.output.original_textstring分句后的句子文本内容。
payload.usage.charactersinteger截止当前累计的计费字符数(在 sentence-end 事件中返回)。

task-finished

服务端返回 task-finished 事件,标志任务已结束。客户端可以关闭 WebSocket 连接或复用连接开启新任务。
Example
{
  "header": {
    "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
    "event": "task-finished",
    "attributes": {
      "request_uuid": "0a9dba9e-d3a6-45a4-be6d-xxxxxxxxxxxx"
    }
  },
  "payload": {
    "usage": {
      "characters": 13
    }
  }
}
字段类型说明
header.task_idstring客户端生成的任务 ID。
header.eventstring事件类型,固定为 task-finished
payload.usage.charactersinteger截止当前累计的计费字符数。

task-failed

当任务失败时,服务端返回 task-failed 事件。客户端需要关闭 WebSocket 连接并处理错误。
Example
{
  "header": {
    "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
    "event": "task-failed",
    "error_code": "InvalidParameter",
    "error_message": "[tts:]Engine return error code: 418",
    "attributes": {}
  },
  "payload": {}
}
字段类型说明
header.task_idstring客户端生成的任务 ID。
header.eventstring事件类型,固定为 task-failed
header.error_codestring错误码。
header.error_messagestring具体错误信息。
Fun-ASR
  • 语音对话
    音乐生成
    图片翻译
    多模态向量
    平台 API
    工具包与框架