@@ -280,6 +280,7 @@ class llm_task {
280280 ONNX_ASR_CONFIG_AUTO_SET (file_body[" mode_param" ], model_config.canary .tgt_lang );
281281 ONNX_ASR_CONFIG_AUTO_SET (file_body[" mode_param" ], model_config.canary .use_pnc );
282282 ONNX_ASR_CONFIG_AUTO_SET (file_body[" mode_param" ], model_config.omnilingual .model );
283+ ONNX_ASR_CONFIG_AUTO_SET (file_body[" mode_param" ], model_config.fire_red_asr_ctc .model );
283284 ONNX_ASR_CONFIG_AUTO_SET (file_body[" mode_param" ], model_config.telespeech_ctc );
284285 ONNX_ASR_CONFIG_AUTO_SET (file_body[" mode_param" ], model_config.tokens );
285286 ONNX_ASR_CONFIG_AUTO_SET (file_body[" mode_param" ], model_config.num_threads );
@@ -333,9 +334,14 @@ class llm_task {
333334 else if (file_body[" mode_param" ].contains (" silence_timeout" ))
334335 silence_timeout = file_body[" mode_param" ][" silence_timeout" ];
335336
336- onnx_asr_config_.model_config .sense_voice .model = base_model + onnx_asr_config_.model_config .sense_voice .model ;
337- onnx_asr_config_.model_config .tokens = base_model + onnx_asr_config_.model_config .tokens ;
338- vad_config_.silero_vad .model = base_model + vad_config_.silero_vad .model ;
337+ if (!onnx_asr_config_.model_config .sense_voice .model .empty ())
338+ onnx_asr_config_.model_config .sense_voice .model =
339+ base_model + onnx_asr_config_.model_config .sense_voice .model ;
340+ if (!onnx_asr_config_.model_config .fire_red_asr_ctc .model .empty ())
341+ onnx_asr_config_.model_config .fire_red_asr_ctc .model =
342+ base_model + onnx_asr_config_.model_config .fire_red_asr_ctc .model ;
343+ onnx_asr_config_.model_config .tokens = base_model + onnx_asr_config_.model_config .tokens ;
344+ vad_config_.silero_vad .model = base_model + vad_config_.silero_vad .model ;
339345
340346 onnx_recognizer_ = std::make_unique<sherpa_onnx::OfflineRecognizer>(onnx_asr_config_);
341347 vad_ = std::make_unique<sherpa_onnx::VoiceActivityDetector>(vad_config_);
@@ -1118,7 +1124,7 @@ class llm_asr : public StackFlow {
11181124 ret = llm_channel->subscriber_work_id (
11191125 data,
11201126 std::bind (&llm_asr::kws_awake, this , std::weak_ptr<llm_task>(llm_task_obj),
1121- std::weak_ptr<llm_channel_obj>(llm_channel), std::placeholders::_1, std::placeholders::_2));
1127+ std::weak_ptr<llm_channel_obj>(llm_channel), std::placeholders::_1, std::placeholders::_2));
11221128 llm_task_obj->inputs_ .push_back (data);
11231129 }
11241130
0 commit comments