FunASR
FunASR copied to clipboard
websocket 协议文档中,在 offline 模式下 is_final 字段是没有用处的
文档内容在 websocket_protocol.md 中的如下板块(从外到内)
-
离线文件转写
-
从服务端往客户端发数据
-
发送识别结果
-
参数介绍
其中在参数介绍
中标注了is_final
字段功能为“表示识别结束”。
这个字段在 offline 模式下永远返回 False,没有出现过 True。
我在阅读一些客户端的代码之后,发现在 offline
模式下,客户端并不关心这个字段。
这些代码通常的做法是在接收到一个 websocket package 之后就直接断开 ws 链接。
建议:在文档中体现出来这一点,标注离线模式下的客户端正确做法。
以下是个人改动的版本,仅供参考:
`mode`:`offline`,表示推理模式为离线文件转写
`wav_name`:表示需要推理音频文件名
`text`:表示语音识别输出文本
`is_final`:表示识别结束,在 `offline` 模式下这个字段永远为 False,服务端 websocket 只会返回一个包
`timestamp`:如果AM为时间戳模型,会返回此字段,表示时间戳,格式为 "[[100,200], [200,500]]"(ms)
`stamp_sents`:如果AM为时间戳模型,会返回此字段,表示句子级别时间戳,格式为 [{"text_seg":"正 是 因 为","punc":",","start":430,"end":1130,"ts_list":[[430,670],[670,810],[810,1030],[1030,1130]]}]