Commit ·
1a38224
1
Parent(s): 456a985
Add new models
Browse files- model.py +78 -0
- requirements.txt +3 -3
model.py
CHANGED
|
@@ -185,6 +185,14 @@ def get_pretrained_model(
|
|
| 185 |
return funsar_nano_31_languages_models[repo_id](
|
| 186 |
repo_id, decoding_method=decoding_method, num_active_paths=num_active_paths
|
| 187 |
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 188 |
elif repo_id in medical_english_models:
|
| 189 |
return medical_english_models[repo_id](
|
| 190 |
repo_id, decoding_method=decoding_method, num_active_paths=num_active_paths
|
|
@@ -2147,6 +2155,62 @@ def _get_chinese_dialect_models(
|
|
| 2147 |
return recognizer
|
| 2148 |
|
| 2149 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2150 |
def _get_funasr_nano(
|
| 2151 |
repo_id: str,
|
| 2152 |
decoding_method: str,
|
|
@@ -2494,6 +2558,14 @@ funsar_nano_31_languages_models = {
|
|
| 2494 |
"csukuangfj/sherpa-onnx-sense-voice-funasr-nano-2025-12-17": _get_sense_voice_pre_trained_model,
|
| 2495 |
}
|
| 2496 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2497 |
medical_english_models = {
|
| 2498 |
"csukuangfj/sherpa-onnx-medasr-ctc-en-int8-2025-12-25": _get_medasr_model,
|
| 2499 |
"csukuangfj/sherpa-onnx-medasr-ctc-en-2025-12-25": _get_medasr_model,
|
|
@@ -2639,6 +2711,8 @@ bengali_models = {
|
|
| 2639 |
|
| 2640 |
|
| 2641 |
all_models = {
|
|
|
|
|
|
|
| 2642 |
**funsar_nano_31_languages_models,
|
| 2643 |
**more_than_1600_languages_models,
|
| 2644 |
**medical_english_models,
|
|
@@ -2669,7 +2743,11 @@ all_models = {
|
|
| 2669 |
|
| 2670 |
language_to_models = {
|
| 2671 |
"Medical dictation English": list(medical_english_models.keys()),
|
|
|
|
| 2672 |
"31 languages (FunASR Nano)": list(funsar_nano_31_languages_models.keys()),
|
|
|
|
|
|
|
|
|
|
| 2673 |
"1600+ languages": list(more_than_1600_languages_models.keys()),
|
| 2674 |
"25 European languages": list(twenty_five_languages_models.keys()),
|
| 2675 |
"Multi-lingual (east aisa)": list(multi_lingual_models.keys()),
|
|
|
|
| 185 |
return funsar_nano_31_languages_models[repo_id](
|
| 186 |
repo_id, decoding_method=decoding_method, num_active_paths=num_active_paths
|
| 187 |
)
|
| 188 |
+
elif repo_id in cohere_transcribe_14_languages_models:
|
| 189 |
+
return cohere_transcribe_14_languages_models[repo_id](
|
| 190 |
+
repo_id, decoding_method=decoding_method, num_active_paths=num_active_paths
|
| 191 |
+
)
|
| 192 |
+
elif repo_id in qwen3_asr_52_languages_models:
|
| 193 |
+
return qwen3_asr_52_languages_models[repo_id](
|
| 194 |
+
repo_id, decoding_method=decoding_method, num_active_paths=num_active_paths
|
| 195 |
+
)
|
| 196 |
elif repo_id in medical_english_models:
|
| 197 |
return medical_english_models[repo_id](
|
| 198 |
repo_id, decoding_method=decoding_method, num_active_paths=num_active_paths
|
|
|
|
| 2155 |
return recognizer
|
| 2156 |
|
| 2157 |
|
| 2158 |
+
@lru_cache(maxsize=5)
|
| 2159 |
+
def _get_qwen3_asr(
|
| 2160 |
+
repo_id: str,
|
| 2161 |
+
decoding_method: str,
|
| 2162 |
+
num_active_paths: int,
|
| 2163 |
+
) -> sherpa_onnx.OfflineRecognizer:
|
| 2164 |
+
assert repo_id in [
|
| 2165 |
+
"csukuangfj2/sherpa-onnx-qwen3-asr-0.6B-int8-2026-03-25",
|
| 2166 |
+
], repo_id
|
| 2167 |
+
|
| 2168 |
+
local_dir = snapshot_download(repo_id)
|
| 2169 |
+
|
| 2170 |
+
os.system(f"ls -lh {local_dir}")
|
| 2171 |
+
|
| 2172 |
+
conv_frontend = f"{local_dir}/conv_frontend.onnx"
|
| 2173 |
+
encoder = f"{local_dir}/encoder.int8.onnx"
|
| 2174 |
+
decoder = f"{local_dir}/decoder.int8.onnx"
|
| 2175 |
+
tokenizer = f"{local_dir}/tokenizer"
|
| 2176 |
+
|
| 2177 |
+
return sherpa_onnx.OfflineRecognizer.from_qwen3_asr(
|
| 2178 |
+
conv_frontend=conv_frontend,
|
| 2179 |
+
encoder=encoder,
|
| 2180 |
+
decoder=decoder,
|
| 2181 |
+
tokenizer=tokenizer,
|
| 2182 |
+
num_threads=2,
|
| 2183 |
+
)
|
| 2184 |
+
|
| 2185 |
+
|
| 2186 |
+
@lru_cache(maxsize=5)
|
| 2187 |
+
def _get_cohere_transcribe(
|
| 2188 |
+
repo_id: str,
|
| 2189 |
+
decoding_method: str,
|
| 2190 |
+
num_active_paths: int,
|
| 2191 |
+
) -> sherpa_onnx.OfflineRecognizer:
|
| 2192 |
+
assert repo_id in [
|
| 2193 |
+
"csukuangfj2/sherpa-onnx-cohere-transcribe-14-lang-int8-2026-04-01",
|
| 2194 |
+
], repo_id
|
| 2195 |
+
|
| 2196 |
+
local_dir = snapshot_download(repo_id)
|
| 2197 |
+
|
| 2198 |
+
os.system(f"ls -lh {local_dir}")
|
| 2199 |
+
|
| 2200 |
+
encoder = f"{local_dir}/encoder.int8.onnx"
|
| 2201 |
+
decoder = f"{local_dir}/decoder.int8.onnx"
|
| 2202 |
+
tokens = f"{local_dir}/tokens.txt"
|
| 2203 |
+
|
| 2204 |
+
return sherpa_onnx.OfflineRecognizer.from_cohere_transcribe(
|
| 2205 |
+
encoder=encoder,
|
| 2206 |
+
decoder=decoder,
|
| 2207 |
+
tokens=tokens,
|
| 2208 |
+
debug=False,
|
| 2209 |
+
num_threads=2,
|
| 2210 |
+
)
|
| 2211 |
+
|
| 2212 |
+
|
| 2213 |
+
@lru_cache(maxsize=5)
|
| 2214 |
def _get_funasr_nano(
|
| 2215 |
repo_id: str,
|
| 2216 |
decoding_method: str,
|
|
|
|
| 2558 |
"csukuangfj/sherpa-onnx-sense-voice-funasr-nano-2025-12-17": _get_sense_voice_pre_trained_model,
|
| 2559 |
}
|
| 2560 |
|
| 2561 |
+
cohere_transcribe_14_languages_models = {
|
| 2562 |
+
"csukuangfj2/sherpa-onnx-cohere-transcribe-14-lang-int8-2026-04-01": _get_cohere_transcribe,
|
| 2563 |
+
}
|
| 2564 |
+
|
| 2565 |
+
qwen3_asr_52_languages_models = {
|
| 2566 |
+
"csukuangfj2/sherpa-onnx-qwen3-asr-0.6B-int8-2026-03-25": _get_qwen3_asr,
|
| 2567 |
+
}
|
| 2568 |
+
|
| 2569 |
medical_english_models = {
|
| 2570 |
"csukuangfj/sherpa-onnx-medasr-ctc-en-int8-2025-12-25": _get_medasr_model,
|
| 2571 |
"csukuangfj/sherpa-onnx-medasr-ctc-en-2025-12-25": _get_medasr_model,
|
|
|
|
| 2711 |
|
| 2712 |
|
| 2713 |
all_models = {
|
| 2714 |
+
**cohere_transcribe_14_languages_models,
|
| 2715 |
+
**qwen3_asr_52_languages_models,
|
| 2716 |
**funsar_nano_31_languages_models,
|
| 2717 |
**more_than_1600_languages_models,
|
| 2718 |
**medical_english_models,
|
|
|
|
| 2743 |
|
| 2744 |
language_to_models = {
|
| 2745 |
"Medical dictation English": list(medical_english_models.keys()),
|
| 2746 |
+
"52 languages (Qwen3 ASR)": list(qwen3_asr_52_languages_models.keys()),
|
| 2747 |
"31 languages (FunASR Nano)": list(funsar_nano_31_languages_models.keys()),
|
| 2748 |
+
"14 languages (Cohere Transcribe)": list(
|
| 2749 |
+
cohere_transcribe_14_languages_models.keys()
|
| 2750 |
+
),
|
| 2751 |
"1600+ languages": list(more_than_1600_languages_models.keys()),
|
| 2752 |
"25 European languages": list(twenty_five_languages_models.keys()),
|
| 2753 |
"Multi-lingual (east aisa)": list(multi_lingual_models.keys()),
|
requirements.txt
CHANGED
|
@@ -10,7 +10,7 @@ numpy<2
|
|
| 10 |
|
| 11 |
huggingface_hub
|
| 12 |
|
| 13 |
-
https://huggingface.co/csukuangfj2/sherpa-onnx-wheels/resolve/main/cpu/1.12.27/sherpa_onnx_core-1.12.27-py3-none-manylinux2014_x86_64.whl
|
| 14 |
-
https://huggingface.co/csukuangfj2/sherpa-onnx-wheels/resolve/main/cpu/1.12.27/sherpa_onnx-1.12.27-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
|
| 15 |
|
| 16 |
-
|
|
|
|
| 10 |
|
| 11 |
huggingface_hub
|
| 12 |
|
| 13 |
+
# https://huggingface.co/csukuangfj2/sherpa-onnx-wheels/resolve/main/cpu/1.12.27/sherpa_onnx_core-1.12.27-py3-none-manylinux2014_x86_64.whl
|
| 14 |
+
# https://huggingface.co/csukuangfj2/sherpa-onnx-wheels/resolve/main/cpu/1.12.27/sherpa_onnx-1.12.27-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
|
| 15 |
|
| 16 |
+
sherpa-onnx>=1.12.35
|