跳转到主要内容
Fun-ASR-Realtime

实时语音识别(Fun-ASR-Realtime)服务端事件

本文介绍 Fun-ASR-Realtime 实时语音识别服务通过 WebSocket 推送给客户端的服务端事件,包括 task-started、result-generated、task-finished、task-failed 四类事件的数据结构与字段含义。

task-started

任务启动成功,客户端可开始发送音频数据。
{
    "header": {
        "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
        "event": "task-started",
        "attributes": {}
    },
    "payload": {}
}
参数类型说明
headerobject
header.task_idstring客户端生成的任务 ID(UUID 格式)。
header.eventstring事件类型,固定为 task-started。
header.attributesobject附加属性(通常为空)。
payloadobject固定为{}。

result-generated

识别结果,包含中间结果(sentence_end=false)和最终结果(sentence_end=true)。其中,新句子的首个中间结果包含 sentence_begin=true。 句子开始结果:
{
  "header": {
    "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
    "event": "result-generated",
    "attributes": {}
  },
  "payload": {
    "output": {
      "sentence": {
        "begin_time": 0,
        "end_time": null,
        "text": "",
        "sentence_begin": true,
        "sentence_end": false,
        "sentence_id": 1,
        "words": []
      }
    },
    "usage": null
  }
}
最终结果:
{
  "header": {
    "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
    "event": "result-generated",
    "attributes": {}
  },
  "payload": {
    "output": {
      "sentence": {
        "begin_time": 170,
        "end_time": 920,
        "text": "好,我知道了",
        "heartbeat": false,
        "sentence_end": true,
        "sentence_id": 1,
        "words": [
          {
            "begin_time": 170,
            "end_time": 295,
            "text": "好",
            "punctuation": ","
          },
          {
            "begin_time": 295,
            "end_time": 503,
            "text": "我",
            "punctuation": ""
          },
          {
            "begin_time": 503,
            "end_time": 711,
            "text": "知道",
            "punctuation": ""
          },
          {
            "begin_time": 711,
            "end_time": 920,
            "text": "了",
            "punctuation": ""
          }
        ]
      }
    },
    "usage": {
      "duration": 3
    }
  }
}
参数类型说明
headerobject
header.task_idstring客户端生成的任务 ID(UUID 格式)。
header.eventstring事件类型,固定为 result-generated。
payloadobject
payload.outputobject
payload.output.sentenceobject
payload.output.sentence.begin_timeinteger句子开始时间(ms)。
payload.output.sentence.end_timeinteger句子结束时间(ms)。
payload.output.sentence.textstring识别文本。
payload.output.sentence.heartbeatboolean若为 true,可跳过该结果(心跳包)。
payload.output.sentence.sentence_beginboolean用于标识句子开始。
payload.output.sentence.sentence_endboolean是否句子结束(true=最终结果,false=中间结果)。
payload.output.sentence.sentence_idinteger句子的序号标识。正常识别结果中,sentence_id 从 1 开始递增。当 heartbeat 为 true 时(即心跳包),sentence_id 固定为 0。
payload.output.sentence.wordsarray[object]字时间戳信息。
payload.output.sentence.words.begin_timeinteger字开始时间(ms)。
payload.output.sentence.words.end_timeinteger字结束时间(ms)。
payload.output.sentence.words.textstring识别文本。
payload.output.sentence.words.punctuationstring标点符号。
payload.usageobject当payload.output.sentence.sentence_end为false(当前句子未结束)时,usage为null。 当payload.output.sentence.sentence_end为true(当前句子已结束)时,usage.duration为当前任务计费时长。
payload.usage.durationinteger任务计费时长(s)。

task-finished

任务正常结束,可关闭连接或复用连接。
{
    "header": {
        "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
        "event": "task-finished",
        "attributes": {}
    },
    "payload": {
        "output": {},
        "usage": null
    }
}
参数类型说明
headerobject
header.task_idstring客户端生成的任务 ID(UUID 格式)。
header.eventstring事件类型,固定为 task-finished。
header.attributesobject附加属性(通常为空)。
payloadobject无需关注其中内容,通常为{}。

task-failed

任务失败,连接会被关闭,无法复用。
{
    "header": {
        "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
        "event": "task-failed",
        "error_code": "CLIENT_ERROR",
        "error_message": "request timeout after 23 seconds.",
        "attributes": {}
    },
    "payload": {}
}
参数类型说明
headerobject
header.task_idstring客户端生成的任务 ID(UUID 格式)。
header.eventstring事件类型,固定为 task-failed。
header.error_codestring错误类型描述。
header.error_messagestring具体错误原因。
header.attributesobject附加属性(通常为空)。
payloadobject固定为{}。
实时语音识别(Fun-ASR-Realtime)服务端事件 - 千问AI平台