__init__.py 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. from funasr.models.e2e_asr_paraformer import Paraformer, BiCifParaformer, ParaformerOnline
  2. from funasr.export.models.e2e_asr_paraformer import Paraformer as Paraformer_export
  3. from funasr.export.models.e2e_asr_paraformer import BiCifParaformer as BiCifParaformer_export
  4. from funasr.export.models.e2e_asr_conformer import Conformer as Conformer_export
  5. from funasr.models.e2e_vad import E2EVadModel
  6. from funasr.export.models.e2e_vad import E2EVadModel as E2EVadModel_export
  7. from funasr.models.target_delay_transformer import TargetDelayTransformer
  8. from funasr.export.models.CT_Transformer import CT_Transformer as CT_Transformer_export
  9. from funasr.train.abs_model import PunctuationModel
  10. from funasr.models.vad_realtime_transformer import VadRealtimeTransformer
  11. from funasr.export.models.CT_Transformer import CT_Transformer_VadRealtime as CT_Transformer_VadRealtime_export
  12. from funasr.export.models.e2e_asr_paraformer import ParaformerOnline_encoder_predictor as ParaformerOnline_encoder_predictor_export
  13. from funasr.export.models.e2e_asr_paraformer import ParaformerOnline_decoder as ParaformerOnline_decoder_export
  14. from funasr.export.models.e2e_asr_contextual_paraformer import ContextualParaformer_backbone as ContextualParaformer_backbone_export
  15. from funasr.export.models.e2e_asr_contextual_paraformer import ContextualParaformer_embedder as ContextualParaformer_embedder_export
  16. from funasr.models.e2e_asr_contextual_paraformer import NeatContextualParaformer
  17. def get_model(model, export_config=None):
  18. if isinstance(model, NeatContextualParaformer):
  19. backbone = ContextualParaformer_backbone_export(model, **export_config)
  20. embedder = ContextualParaformer_embedder_export(model, **export_config)
  21. return [embedder, backbone]
  22. elif isinstance(model, BiCifParaformer):
  23. return BiCifParaformer_export(model, **export_config)
  24. elif isinstance(model, ParaformerOnline):
  25. encoder = ParaformerOnline_encoder_predictor_export(model, model_name="model")
  26. decoder = ParaformerOnline_decoder_export(model, model_name="decoder")
  27. return [encoder, decoder]
  28. elif isinstance(model, Paraformer):
  29. return Paraformer_export(model, **export_config)
  30. elif isinstance(model, Conformer_export):
  31. return Conformer_export(model, **export_config)
  32. elif isinstance(model, E2EVadModel):
  33. return E2EVadModel_export(model, **export_config)
  34. elif isinstance(model, PunctuationModel):
  35. if isinstance(model.punc_model, TargetDelayTransformer):
  36. return CT_Transformer_export(model.punc_model, **export_config)
  37. elif isinstance(model.punc_model, VadRealtimeTransformer):
  38. return CT_Transformer_VadRealtime_export(model.punc_model, **export_config)
  39. else:
  40. raise "Funasr does not support the given model type currently."