com-define.h 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. #pragma once
  2. namespace funasr {
  3. #define S_BEGIN 0
  4. #define S_MIDDLE 1
  5. #define S_END 2
  6. #define S_ALL 3
  7. #define S_ERR 4
  8. #ifndef MODEL_SAMPLE_RATE
  9. #define MODEL_SAMPLE_RATE 16000
  10. #endif
  11. // parser option
  12. #define MODEL_DIR "model-dir"
  13. #define OFFLINE_MODEL_DIR "model-dir"
  14. #define ONLINE_MODEL_DIR "online-model-dir"
  15. #define LM_DIR "lm-dir"
  16. #define GLOB_BEAM "global-beam"
  17. #define LAT_BEAM "lattice-beam"
  18. #define AM_SCALE "am-scale"
  19. // #define FST_HOTWORD "fst-hotword"
  20. #define FST_INC_WTS "fst-inc-wts"
  21. #define VAD_DIR "vad-dir"
  22. #define PUNC_DIR "punc-dir"
  23. #define QUANTIZE "quantize"
  24. #define VAD_QUANT "vad-quant"
  25. #define PUNC_QUANT "punc-quant"
  26. #define ASR_MODE "mode"
  27. #define WAV_PATH "wav-path"
  28. #define WAV_SCP "wav-scp"
  29. #define TXT_PATH "txt-path"
  30. #define THREAD_NUM "thread-num"
  31. #define PORT_ID "port-id"
  32. #define HOTWORD_SEP " "
  33. // #define VAD_MODEL_PATH "vad-model"
  34. // #define VAD_CMVN_PATH "vad-cmvn"
  35. // #define VAD_CONFIG_PATH "vad-config"
  36. // #define AM_MODEL_PATH "am-model"
  37. // #define AM_CMVN_PATH "am-cmvn"
  38. // #define AM_CONFIG_PATH "am-config"
  39. // #define PUNC_MODEL_PATH "punc-model"
  40. // #define PUNC_CONFIG_PATH "punc-config"
  41. #define MODEL_NAME "model.onnx"
  42. // hotword embedding compile model
  43. #define MODEL_EB_NAME "model_eb.onnx"
  44. #define QUANT_MODEL_NAME "model_quant.onnx"
  45. #define VAD_CMVN_NAME "vad.mvn"
  46. #define VAD_CONFIG_NAME "vad.yaml"
  47. #define AM_CMVN_NAME "am.mvn"
  48. #define AM_CONFIG_NAME "config.yaml"
  49. #define LM_CONFIG_NAME "config.yaml"
  50. #define PUNC_CONFIG_NAME "punc.yaml"
  51. #define MODEL_SEG_DICT "seg_dict"
  52. #define HOTWORD "hotword"
  53. // #define NN_HOTWORD "nn-hotword"
  54. #define ITN_DIR "itn-dir"
  55. #define ITN_TAGGER_NAME "zh_itn_tagger.fst"
  56. #define ITN_VERBALIZER_NAME "zh_itn_verbalizer.fst"
  57. #define ENCODER_NAME "model.onnx"
  58. #define QUANT_ENCODER_NAME "model_quant.onnx"
  59. #define DECODER_NAME "decoder.onnx"
  60. #define QUANT_DECODER_NAME "decoder_quant.onnx"
  61. #define LM_FST_RES "TLG.fst"
  62. // vad
  63. #ifndef VAD_SILENCE_DURATION
  64. #define VAD_SILENCE_DURATION 800
  65. #endif
  66. #ifndef VAD_MAX_LEN
  67. #define VAD_MAX_LEN 15000
  68. #endif
  69. #ifndef VAD_SPEECH_NOISE_THRES
  70. #define VAD_SPEECH_NOISE_THRES 0.9
  71. #endif
  72. #ifndef VAD_LFR_M
  73. #define VAD_LFR_M 5
  74. #endif
  75. #ifndef VAD_LFR_N
  76. #define VAD_LFR_N 1
  77. #endif
  78. // asr
  79. #ifndef PARA_LFR_M
  80. #define PARA_LFR_M 7
  81. #endif
  82. #ifndef PARA_LFR_N
  83. #define PARA_LFR_N 6
  84. #endif
  85. #ifndef ONLINE_STEP
  86. #define ONLINE_STEP 9600
  87. #endif
  88. // punc
  89. #define UNK_CHAR "<unk>"
  90. #define TOKEN_LEN 20
  91. #define CANDIDATE_NUM 6
  92. #define UNKNOW_INDEX 0
  93. #define NOTPUNC "_"
  94. #define NOTPUNC_INDEX 1
  95. #define COMMA_INDEX 2
  96. #define PERIOD_INDEX 3
  97. #define QUESTION_INDEX 4
  98. #define DUN_INDEX 5
  99. #define CACHE_POP_TRIGGER_LIMIT 200
  100. #define JIEBA_DICT "jieba.c.dict"
  101. #define JIEBA_USERDICT "jieba_usr_dict"
  102. #define JIEBA_HMM_MODEL "jieba.hmm"
  103. } // namespace funasr