游雁
2024-01-14 8912e0696af069de47646fdb8a9d9c4e086e88b3
README_zh.md
@@ -31,6 +31,11 @@
<a name="最新动态"></a>
## 最新动态
- 2024/01/09: funasr社区软件包windows 2.0版本发布,支持软件包中文离线文件转写4.1、英文离线文件转写1.2、中文实时听写服务1.6的最新功能,详细信息参阅([FunASR社区软件包windows版本](https://www.modelscope.cn/models/damo/funasr-runtime-win-cpu-x64/summary))
- 2024/01/03: 中文离线文件转写服务 4.0 发布,新增支持8k模型、优化时间戳不匹配问题及增加句子级别时间戳、优化英文单词fst热词效果、支持自动化配置线程参数,同时修复已知的crash问题及内存泄漏问题,详细信息参阅([一键部署文档](runtime/readme_cn.md#中文离线文件转写服务cpu版本))
- 2024/01/03: 中文实时语音听写服务 1.6 发布,2pass-offline模式支持Ngram语言模型解码、wfst热词,同时修复已知的crash问题及内存泄漏问题,详细信息参阅([一键部署文档](runtime/readme_cn.md#中文实时语音听写服务cpu版本))
- 2024/01/03: 英文离线文件转写服务 1.2 发布,修复已知的crash问题及内存泄漏问题,详细信息参阅([一键部署文档](runtime/readme_cn.md#英文离线文件转写服务cpu版本))
- 2023/12/04: funasr社区软件包windows 1.0版本发布,支持中文离线文件转写、英文离线文件转写、中文实时听写服务,详细信息参阅([FunASR社区软件包windows版本](https://www.modelscope.cn/models/damo/funasr-runtime-win-cpu-x64/summary))
- 2023/11/08:中文离线文件转写服务3.0 CPU版本发布,新增标点大模型、Ngram语言模型与wfst热词,详细信息参阅([一键部署文档](runtime/readme_cn.md#中文离线文件转写服务cpu版本))
- 2023/10/17: 英文离线文件转写服务一键部署的CPU版本发布,详细信息参阅([一键部署文档](runtime/readme_cn.md#英文离线文件转写服务cpu版本))
- 2023/10/13: [SlideSpeech](https://slidespeech.github.io/): 一个大规模的多模态音视频语料库,主要是在线会议或者在线课程场景,包含了大量与发言人讲话实时同步的幻灯片。
@@ -81,39 +86,59 @@
### 非实时语音识别
```python
from funasr import infer
from funasr import AutoModel
p = infer(model="paraformer-zh", vad_model="fsmn-vad", punc_model="ct-punc", model_hub="ms")
model = AutoModel(model="paraformer-zh")
# for the long duration wav, you could add vad model
# model = AutoModel(model="paraformer-zh", vad_model="fsmn-vad")
res = p("asr_example_zh.wav", batch_size_token=5000)
res = model(input="asr_example_zh.wav", batch_size=64)
print(res)
```
注:`model_hub`:表示模型仓库,`ms`为选择modelscope下载,`hf`为选择huggingface下载。
### 实时语音识别
```python
from funasr import infer
[//]: # (### 实时语音识别)
p = infer(model="paraformer-zh-streaming", model_hub="ms")
[//]: # (```python)
chunk_size = [0, 10, 5] #[0, 10, 5] 600ms, [0, 8, 4] 480ms
param_dict = {"cache": dict(), "is_final": False, "chunk_size": chunk_size, "encoder_chunk_look_back": 4, "decoder_chunk_look_back": 1}
[//]: # (from funasr import infer)
import torchaudio
speech = torchaudio.load("asr_example_zh.wav")[0][0]
speech_length = speech.shape[0]
[//]: # ()
[//]: # (p = infer&#40;model="paraformer-zh-streaming", model_hub="ms"&#41;)
stride_size = chunk_size[1] * 960
sample_offset = 0
for sample_offset in range(0, speech_length, min(stride_size, speech_length - sample_offset)):
    param_dict["is_final"] = True if sample_offset + stride_size >= speech_length - 1 else False
    input = speech[sample_offset: sample_offset + stride_size]
    rec_result = p(input=input, param_dict=param_dict)
    print(rec_result)
```
注:`chunk_size`为流式延时配置,`[0,10,5]`表示上屏实时出字粒度为`10*60=600ms`,未来信息为`5*60=300ms`。每次推理输入为`600ms`(采样点数为`16000*0.6=960`),输出为对应文字,最后一个语音片段输入需要设置`is_final=True`来强制输出最后一个字。
[//]: # ()
[//]: # (chunk_size = [0, 10, 5] #[0, 10, 5] 600ms, [0, 8, 4] 480ms)
更多详细用法([新人文档](https://alibaba-damo-academy.github.io/FunASR/en/funasr/quick_start_zh.html))
[//]: # (param_dict = {"cache": dict&#40;&#41;, "is_final": False, "chunk_size": chunk_size, "encoder_chunk_look_back": 4, "decoder_chunk_look_back": 1})
[//]: # ()
[//]: # (import torchaudio)
[//]: # (speech = torchaudio.load&#40;"asr_example_zh.wav"&#41;[0][0])
[//]: # (speech_length = speech.shape[0])
[//]: # ()
[//]: # (stride_size = chunk_size[1] * 960)
[//]: # (sample_offset = 0)
[//]: # (for sample_offset in range&#40;0, speech_length, min&#40;stride_size, speech_length - sample_offset&#41;&#41;:)
[//]: # (    param_dict["is_final"] = True if sample_offset + stride_size >= speech_length - 1 else False)
[//]: # (    input = speech[sample_offset: sample_offset + stride_size])
[//]: # (    rec_result = p&#40;input=input, param_dict=param_dict&#41;)
[//]: # (    print&#40;rec_result&#41;)
[//]: # (```)
[//]: # (注:`chunk_size`为流式延时配置,`[0,10,5]`表示上屏实时出字粒度为`10*60=600ms`,未来信息为`5*60=300ms`。每次推理输入为`600ms`(采样点数为`16000*0.6=960`),输出为对应文字,最后一个语音片段输入需要设置`is_final=True`来强制输出最后一个字。)
[//]: # ()
[//]: # (更多详细用法([新人文档]&#40;https://alibaba-damo-academy.github.io/FunASR/en/funasr/quick_start_zh.html&#41;))
<a name="服务部署"></a>