Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ASRLab

ASR 引擎集合。结构与 TTSLab 一致: Python 后端 + launcher 子模块前端。

结构

src/asrlab/
├── runtime/          # 配置加载、音频工具(无重依赖,导入廉价)
├── engines/
│   └── funasr/       # FunASR / SenseVoice
└── types.py          # ASRResponse / VadResponse / Sentence / Word 等
config/runtime.toml   # 运行时配置
launcher/             # 前端子模块

环境

just use-cu128     # RTX 50 系(默认);另有 use-cu124 / use-cu118 / use-cpu
just torch-check   # 确认 torch 和 CUDA
just test

FunASR

需要 ffprobe 在 PATH 上(VAD 要用它读音频时长)。

模型默认放在 models/ 下,路径在 config/runtime.toml[asr.funasr] 里配:

配置项 默认
base_model speech_seaco_paraformer_large_asr_nat-zh-cn-16k-common-vocab8404-pytorch
vad_model speech_fsmn_vad_zh-cn-16k-common-pytorch
punc_model punc_ct-transformer_zh-cn-common-vocab272727-pytorch
sense_voice_model SenseVoiceSmall

相对路径按仓库根解析,所以在任何目录下调用都指向同一份模型。

from pathlib import Path

from asrlab.engines.funasr import (
    FunASRModel,
    convert_asr_response_to_sentences,
    generate_asr_results,
)

model = FunASRModel().vad_and_asr()
response = generate_asr_results(model, Path("demo.wav"))
sentences = convert_asr_response_to_sentences(response)

FunASRModel 的五种组合:vad_and_asr / only_txt / only_puc / only_vad / sense_voice

出处

FunASR 引擎迁自 XnneHangLab,原路径 src/lab/asr/funasr/,最后完整存在于 commit 91b0170,随后被 PR #313 用 sherpa-onnx 整体替换。此处只迁了引擎核心(4 个文件

  • types.py);原仓库里的 FastAPI 路由、acgo CLI、combiner/cutter/SRT 输出 仍留在 91b0170 / 878134c 里,需要时再捞。

License

AGPL-3.0-or-later

About

ASR 引擎集合 — FunASR / SenseVoice,结构对齐 TTSLab

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages