-
Notifications
You must be signed in to change notification settings - Fork 1.9k
PaddleSpeech CLI Architecture
Hui Zhang edited this page Feb 16, 2022
·
12 revisions
- 从用户体验角度考虑,需要给每个模型实现单条推理功能。
- 语音模型需要全量接入 PaddleHub 中。
- 模型组合使用完成高阶应用案例。如 #1250
PaddleSpeech 新增 CLI 一站式语音工具箱。
CLI 统一管理所有语音模型的单条推理,维护预训练模型下载,设计清晰、可维护、可扩展,满足上述需求。
安全方面,主要考虑用户输入检测:
1.对非法输入做退出处理,并输出必要的提示信息;
2. 不满足模型输入要求的,做自适应处理,并输出处理警告;
3. 模型资源下载后做md5检测;
注:当模型更新后,需要更新CLI对应的配置项中模型的MD5.
安装 PaddleSpeech 包:
pip install paddlespeech
ASR+Punc应用示例:
from paddlespeech.cli import ASRExecutor
from paddlespeech.cli import TextExecutor
if __name__ == "__main__":
asr_executor = ASRExecutor()
text_executor = TextExecutor()
text = asr_executor(
audio_file=os.path.abspath(os.path.expanduser(args.input)),
device=args.device)
result = text_executor(
text=text,
task='punc',
model='ernie_linear_p3_wudao',
device=args.device)
print('ASR Result: \n{}'.format(text))
print('ASR with Punc Result: \n{}'.format(result))
通过如下命令,获取所有语音任务、各任务支持模型、语言等详细:
paddlespeech stats
输出样例,输出格式可以优化成 Markdown 方便文档话。
ASR:
conformer-librispeech-en
conformer-aishell-zh
...
Punc:
erine_linear-iwslt-zh