From 26b270f89b8e2a123212de56c07a995f142d97e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B8=B8=E9=9B=81?= Date: Wed, 9 Oct 2024 16:24:38 +0800 Subject: [PATCH] minmo --- .../conf/MinMo_Speech2Text_Align_8b.yaml | 87 + .../conf/MinMo_Speech2Text_PreAlign_8b.yaml | 93 + .../minmo/conf/MinMo_Speech2Text_SFT_8b.yaml | 87 + .../minmo/demo_speech2text_multi_asr.sh | 347 ++++ .../minmo/demo_speech2text_multi_lora.py | 126 ++ .../run_dlc_Speech2Text_Align_8b.sh | 81 + .../run_dlc_Speech2Text_PreAlign_8b.sh | 81 + .../run_dlc_Speech2Text_SFT_8b.sh | 81 + .../minmo/utils/clean_res.py | 11 + .../minmo/utils/cn_tn.py | 1275 ++++++++++++ .../minmo/utils/compute-wer4 | Bin 0 -> 2498296 bytes .../minmo/utils/fleur_proc.py | 14 + .../minmo/utils/format5resV2.py | 295 +++ .../minmo/utils/format_bpemodel_res.py | 43 + .../minmo/utils/format_remove_punc.py | 24 + .../minmo/utils/openai_whisper.json | 1742 +++++++++++++++++ .../minmo/utils/parse_options.sh | 97 + .../minmo/utils/res4char.py | 92 + .../minmo/utils/score.py | 125 ++ .../minmo/utils/split_merge_res.py | 34 + .../utils/text_normalize/add_space_for_zh.py | 18 + .../text_normalize/whisper_basic_normalize.py | 24 + .../whisper_english_normalize.py | 22 + .../text_normalize/zh_hant2zh_cn_process.py | 32 + .../minmo/utils/whisper_english_normalize.py | 25 + .../minmo/utils/zh_hant2zh_cn_process.py | 28 + .../sense_voice/demo.py | 1 + .../sense_voice/demo_ctc.py | 1 + .../sense_voice/demo_fsmn.py | 1 + funasr/models/llm_asr/model.py | 65 +- funasr/models/minmo/model.py | 634 ++++++ 31 files changed, 5557 insertions(+), 29 deletions(-) create mode 100644 examples/industrial_data_pretraining/minmo/conf/MinMo_Speech2Text_Align_8b.yaml create mode 100644 examples/industrial_data_pretraining/minmo/conf/MinMo_Speech2Text_PreAlign_8b.yaml create mode 100644 examples/industrial_data_pretraining/minmo/conf/MinMo_Speech2Text_SFT_8b.yaml create mode 100644 examples/industrial_data_pretraining/minmo/demo_speech2text_multi_asr.sh create mode 100644 examples/industrial_data_pretraining/minmo/demo_speech2text_multi_lora.py create mode 100644 examples/industrial_data_pretraining/minmo/training_scripts/run_dlc_Speech2Text_Align_8b.sh create mode 100644 examples/industrial_data_pretraining/minmo/training_scripts/run_dlc_Speech2Text_PreAlign_8b.sh create mode 100644 examples/industrial_data_pretraining/minmo/training_scripts/run_dlc_Speech2Text_SFT_8b.sh create mode 100644 examples/industrial_data_pretraining/minmo/utils/clean_res.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/cn_tn.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/compute-wer4 create mode 100644 examples/industrial_data_pretraining/minmo/utils/fleur_proc.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/format5resV2.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/format_bpemodel_res.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/format_remove_punc.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/openai_whisper.json create mode 100755 examples/industrial_data_pretraining/minmo/utils/parse_options.sh create mode 100644 examples/industrial_data_pretraining/minmo/utils/res4char.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/score.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/split_merge_res.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/text_normalize/add_space_for_zh.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/text_normalize/whisper_basic_normalize.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/text_normalize/whisper_english_normalize.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/text_normalize/zh_hant2zh_cn_process.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/whisper_english_normalize.py create mode 100644 examples/industrial_data_pretraining/minmo/utils/zh_hant2zh_cn_process.py diff --git a/examples/industrial_data_pretraining/minmo/conf/MinMo_Speech2Text_Align_8b.yaml b/examples/industrial_data_pretraining/minmo/conf/MinMo_Speech2Text_Align_8b.yaml new file mode 100644 index 000000000..696120f11 --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/conf/MinMo_Speech2Text_Align_8b.yaml @@ -0,0 +1,87 @@ +model: MinMo_S2T +model_conf: + lsm_weight: 0.1 + length_normalized_loss: true +audio_encoder: /cpfs_speech/zhifu.gzf/init_model/SenseVoiceSANM +audio_encoder_conf: + hub: ms + freeze: false + freeze_layer_num: -1 +llm: Qwen2.5-14B-Instruct +llm_conf: + hub: hf + freeze: true + llm_dtype: bf16 + init_param_path: /cpfs_speech/zhifu.gzf/init_model/qwen/Qwen2.5-14B-Instruct + use_lora: false + lora_conf: + task_type: "CAUSAL_LM" + r: 16 + lora_alpha: 32 + lora_dropout: 0.05 + bias: "none" + target_modules: + - q_proj + - v_proj +audio_adaptor: Transformer +audio_adaptor_conf: + freeze: false + downsample_rate: 2 + ffn_dim: 2048 + llm_dim: 5120 + encoder_dim: 1280 + n_layer: 1 +frontend: WhisperFrontend +frontend_conf: + fs: 16000 + n_mels: 128 + do_pad_trim: false + filters_path: /cpfs_speech/zhifu.gzf/init_model/SenseVoiceSANM/assets/mel_filters.npz +train_conf: + use_lora: ${llm_conf.use_lora} + accum_grad: 8 + grad_clip: 5 + max_epoch: 2 + keep_nbest_models: 100 + log_interval: 50 + effective_save_name_excludes: + - llm. + resume: true + validate_interval: 10000 + save_checkpoint_interval: 10000 + avg_nbest_model: 100 + use_bf16: false + use_deepspeed: false + deepspeed_config: /nfs/zhifu.gzf/codebase/FunASR/examples/deepspeed_conf/ds_stage1.json + save_init_model: false +optim: adamw +optim_conf: + lr: 0.00003 + weight_decay: 0.0 +scheduler: warmuplr +scheduler_conf: + warmup_steps: 10000 +dataset: OpenAIDatasetMultiTurn +dataset_conf: + index_ds: OpenAIIndexDSJsonl + batch_sampler: BatchSampler + batch_type: token + batch_size: 1500 + max_token_length: 1500 + shuffle: true + sort_size: 512 + batch_size_scale_ratio_max: 2 + num_workers: 4 + audio_adaptor_downsample_rate: ${audio_adaptor_conf.downsample_rate} + audio_encoder_downsample_rate: 4 + data_split_num: 512 + batch_size_sample_max: 15 + retry: 50 + batch_size_token_max: 4000 + max_source_length: 5500 +tokenizer: HuggingfaceTokenizer +tokenizer_conf: + init_param_path: ${llm_conf.init_param_path} +enable_tf32: true +debug: false +excludes: llm. diff --git a/examples/industrial_data_pretraining/minmo/conf/MinMo_Speech2Text_PreAlign_8b.yaml b/examples/industrial_data_pretraining/minmo/conf/MinMo_Speech2Text_PreAlign_8b.yaml new file mode 100644 index 000000000..eeaa8939d --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/conf/MinMo_Speech2Text_PreAlign_8b.yaml @@ -0,0 +1,93 @@ +model: MinMo_S2T +model_conf: + lsm_weight: 0.1 + length_normalized_loss: true + + +audio_encoder: /cpfs_speech/zhifu.gzf/init_model/SenseVoiceSANM +audio_encoder_conf: + hub: ms + freeze: true + freeze_layer_num: -1 + + +llm: Qwen2.5-7B-Instruct +llm_conf: + hub: hf + freeze: true + llm_dtype: bf16 + init_param_path: /cpfs_speech/zhifu.gzf/init_model/qwen/Qwen2.5-7B-Instruct + use_lora: false + lora_conf: + task_type: "CAUSAL_LM" + r: 16 + lora_alpha: 32 + lora_dropout: 0.05 + bias: "none" + target_modules: + - q_proj + - v_proj + +audio_adaptor: Transformer +audio_adaptor_conf: + freeze: false + downsample_rate: 2 + ffn_dim: 2048 + encoder_dim: 1280 + n_layer: 2 + +frontend: WhisperFrontend +frontend_conf: + fs: 16000 + n_mels: 128 + do_pad_trim: false + filters_path: /cpfs_speech/zhifu.gzf/init_model/SenseVoiceSANM/assets/mel_filters.npz +train_conf: + use_lora: ${llm_conf.use_lora} + accum_grad: 8 + grad_clip: 5 + max_epoch: 2 + keep_nbest_models: 100 + log_interval: 50 + effective_save_name_excludes: + - llm. + resume: true + validate_interval: 10000 + save_checkpoint_interval: 10000 + avg_nbest_model: 100 + use_bf16: false + use_deepspeed: false + deepspeed_config: /nfs/zhifu.gzf/codebase/FunASR/examples/deepspeed_conf/ds_stage1.json + save_init_model: false + +optim: adamw +optim_conf: + lr: 0.0001 + weight_decay: 0.0 +scheduler: warmuplr +scheduler_conf: + warmup_steps: 2000 +dataset: OpenAIDatasetMultiTurn +dataset_conf: + index_ds: OpenAIIndexDSJsonl + batch_sampler: BatchSampler + batch_type: token + batch_size: 1500 + max_token_length: 1500 + shuffle: true + sort_size: 512 + batch_size_scale_ratio_max: 2 + num_workers: 4 + audio_adaptor_downsample_rate: ${audio_adaptor_conf.downsample_rate} + audio_encoder_downsample_rate: 4 + data_split_num: 512 + batch_size_sample_max: 15 + retry: 50 + batch_size_token_max: 4000 + max_source_length: 5500 +tokenizer: HuggingfaceTokenizer +tokenizer_conf: + init_param_path: ${llm_conf.init_param_path} +enable_tf32: true +debug: false +excludes: llm. diff --git a/examples/industrial_data_pretraining/minmo/conf/MinMo_Speech2Text_SFT_8b.yaml b/examples/industrial_data_pretraining/minmo/conf/MinMo_Speech2Text_SFT_8b.yaml new file mode 100644 index 000000000..de33b808b --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/conf/MinMo_Speech2Text_SFT_8b.yaml @@ -0,0 +1,87 @@ +model: MinMo_S2T +model_conf: + lsm_weight: 0.1 + length_normalized_loss: true +audio_encoder: /cpfs_speech/zhifu.gzf/init_model/SenseVoiceSANM +audio_encoder_conf: + hub: ms + freeze: true + freeze_layer_num: -1 +llm: Qwen2.5-14B-Instruct +llm_conf: + hub: hf + freeze: true + llm_dtype: bf16 + init_param_path: /cpfs_speech/zhifu.gzf/init_model/qwen/Qwen2.5-14B-Instruct + use_lora: true + lora_conf: + task_type: "CAUSAL_LM" + r: 16 + lora_alpha: 32 + lora_dropout: 0.05 + bias: "none" + target_modules: + - q_proj + - v_proj +audio_adaptor: Transformer +audio_adaptor_conf: + freeze: true + downsample_rate: 2 + ffn_dim: 2048 + llm_dim: 5120 + encoder_dim: 1280 + n_layer: 1 +frontend: WhisperFrontend +frontend_conf: + fs: 16000 + n_mels: 128 + do_pad_trim: false + filters_path: /cpfs_speech/zhifu.gzf/init_model/SenseVoiceSANM/assets/mel_filters.npz +train_conf: + use_lora: ${llm_conf.use_lora} + accum_grad: 8 + grad_clip: 5 + max_epoch: 2 + keep_nbest_models: 100 + log_interval: 50 + effective_save_name_excludes: + - llm. + resume: true + validate_interval: 10000 + save_checkpoint_interval: 10000 + avg_nbest_model: 100 + use_bf16: false + use_deepspeed: false + deepspeed_config: /nfs/zhifu.gzf/codebase/FunASR/examples/deepspeed_conf/ds_stage1.json + save_init_model: false +optim: adamw +optim_conf: + lr: 0.00003 + weight_decay: 0.0 +scheduler: warmuplr +scheduler_conf: + warmup_steps: 10000 +dataset: OpenAIDatasetMultiTurn +dataset_conf: + index_ds: OpenAIIndexDSJsonl + batch_sampler: BatchSampler + batch_type: token + batch_size: 1500 + max_token_length: 1500 + shuffle: true + sort_size: 512 + batch_size_scale_ratio_max: 2 + num_workers: 4 + audio_adaptor_downsample_rate: ${audio_adaptor_conf.downsample_rate} + audio_encoder_downsample_rate: 4 + data_split_num: 512 + batch_size_sample_max: 15 + retry: 50 + batch_size_token_max: 4000 + max_source_length: 5500 +tokenizer: HuggingfaceTokenizer +tokenizer_conf: + init_param_path: ${llm_conf.init_param_path} +enable_tf32: true +debug: false +excludes: llm. diff --git a/examples/industrial_data_pretraining/minmo/demo_speech2text_multi_asr.sh b/examples/industrial_data_pretraining/minmo/demo_speech2text_multi_asr.sh new file mode 100644 index 000000000..1a410bb29 --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/demo_speech2text_multi_asr.sh @@ -0,0 +1,347 @@ + +############################################## +# aishell_librispeech_wenetspeech_cv_fluers # +############################################## + +###### +ckpt_dir="/nfs/beinian.lzr/workspace/GPT-4o/Exp/Speech2Text_Align_8m-8gpu/Speech2Text_Align_V2p5_7b_1004" +ckpt_id="ds-model.pt.ep0.640000" +device="cuda:0" + +stage=1 +stop_stage=8 +decode="true" + +#data dir +jsonl_dir="/nfs/beinian.lzr/workspace/GPT-4o/Data/Speech2Text_V2/TestData/ASR" + +metrics_tool=../../../funasr/metrics/wer.py + +out_dir="${ckpt_dir}/inference-${ckpt_id}" + +###### +. utils/parse_options.sh || exit 1; + +mkdir -p ${out_dir} + + +if [ ${stage} -le 1 ] && [ ${stop_stage} -ge 1 ]; then + + for data_set in "aishell1_test_speech2text.jsonl" "aishell2_ios_test_speech2text.jsonl"; do + { + jsonl=${jsonl_dir}/${data_set} + output_dir=${out_dir}/${data_set} + mkdir -p ${output_dir} + pred_file=${output_dir}/1best_recog/text_tn + ref_file=${output_dir}/1best_recog/label + log_file=${output_dir}/log.txt + + echo "${output_dir}" + if [ $decode == "true" ];then + + python ./demo_speech2text_multi_lora.py ${ckpt_dir} ${ckpt_id} ${jsonl} ${output_dir} ${device} &> ${log_file} + + fi + + python ${metrics_tool} ++ref_file=${ref_file} ++hyp_file=${pred_file} ++cer_file=${pred_file}.cer ++cn_postprocess=false + + pred_file=${output_dir}/1best_recog/text + cut ${pred_file} -d " " -f 1 > ${pred_file}.key + cut ${pred_file} -d " " -f 2- > ${pred_file}.text + + python utils/cn_tn.py ${pred_file}.text ${pred_file}.text.tn + paste -d " " ${pred_file}.key ${pred_file}.text.tn > ${pred_file}.tn.proc + + python utils/format5resV2.py ${ref_file} 1 > ${ref_file}.itn + python utils/format5resV2.py ${pred_file}.tn.proc 1 > ${pred_file}.tn.proc.itn + python ${metrics_tool} ++ref_file=${ref_file}.itn ++hyp_file=${pred_file}.tn.proc.itn ++cer_file=${pred_file}.tn.proc.itn.cer ++cn_postprocess=false + + } & + done + wait + +fi + +if [ ${stage} -le 2 ] && [ ${stop_stage} -ge 2 ]; then + + for data_set in "librispeech_test_clean_speech2text.jsonl" "librispeech_test_other_speech2text.jsonl"; do + { + jsonl=${jsonl_dir}/${data_set} + output_dir=${out_dir}/${data_set} + mkdir -p ${output_dir} + pred_file=${output_dir}/1best_recog/text_tn + ref_file=${output_dir}/1best_recog/label + + log_file=${output_dir}/log.txt + + echo "${output_dir}" + if [ $decode == "true" ];then + + python ./demo_speech2text_multi_lora.py ${ckpt_dir} ${ckpt_id} ${jsonl} ${output_dir} ${device} &> ${log_file} + + fi + + python ${metrics_tool} ++ref_file=${ref_file} ++hyp_file=${pred_file} ++cer_file=${pred_file}.cer ++cn_postprocess=false + + pred_file=${output_dir}/1best_recog/text + python utils/text_normalize/whisper_english_normalize.py ${pred_file} ${pred_file}.tn.proc + python utils/text_normalize/whisper_english_normalize.py ${ref_file} ${ref_file}.tn.proc + python ${metrics_tool} ++ref_file=${ref_file}.tn.proc ++hyp_file=${pred_file}.tn.proc ++cer_file=${pred_file}.tn.proc.cer ++cn_postprocess=false + + } + done + # wait + +fi + + +if [ ${stage} -le 4 ] && [ ${stop_stage} -ge 4 ]; then + + for data_set in "wenetspeech_test_meeting_speech2text.jsonl" "wenetspeech_test_net_speech2text.jsonl"; do + { + jsonl=${jsonl_dir}/${data_set} + output_dir=${out_dir}/${data_set} + mkdir -p ${output_dir} + pred_file=${output_dir}/1best_recog/text_tn + ref_file=${output_dir}/1best_recog/label + log_file=${output_dir}/log.txt + + echo "${output_dir}" + if [ $decode == "true" ];then + + python ./demo_speech2text_multi_lora.py ${ckpt_dir} ${ckpt_id} ${jsonl} ${output_dir} ${device} &> ${log_file} + + fi + + python ${metrics_tool} ++ref_file=${ref_file} ++hyp_file=${pred_file} ++cer_file=${pred_file}.cer ++cn_postprocess=false + + pred_file=${output_dir}/1best_recog/text + cut ${pred_file} -d " " -f 1 > ${pred_file}.key + cut ${pred_file} -d " " -f 2- > ${pred_file}.text + + python utils/cn_tn.py ${pred_file}.text ${pred_file}.text.tn + paste -d " " ${pred_file}.key ${pred_file}.text.tn > ${pred_file}.tn.proc + + python utils/clean_res.py ${ref_file} ${ref_file}.tn.proc + python utils/format5resV2.py ${ref_file}.tn.proc 1 > ${ref_file}.itn + + python utils/format5resV2.py ${pred_file}.tn.proc 1 > ${pred_file}.tn.proc.itn + python ${metrics_tool} ++ref_file=${ref_file}.itn ++hyp_file=${pred_file}.tn.proc.itn ++cer_file=${pred_file}.tn.proc.itn.cer ++cn_postprocess=false + + } + done + # wait + +fi + + +jsonl_dir="/nfs/beinian.lzr/workspace/GPT-4o/Data/Speech2Text/TestData" + +new_prompt="语音转写,不进行文本规整:" + +if [ ${stage} -le 5 ] && [ ${stop_stage} -ge 5 ]; then + + for data_set in "common_voice_zh-CN_with_punc_itn_speech2text_singleprompt.jsonl" "fleurs_cmn_hans_cn_with_punc_itn_speech2text_singleprompt.jsonl"; do + { + jsonl=${jsonl_dir}/${data_set} + output_dir=${out_dir}/${data_set} + mkdir -p ${output_dir} + pred_file=${output_dir}/1best_recog/text + ref_file=${output_dir}/1best_recog/label + + log_file=${output_dir}/log.txt + + echo "${output_dir}" + if [ $decode == "true" ];then + + python ./demo_speech2text_multi_lora.py ${ckpt_dir} ${ckpt_id} ${jsonl} ${output_dir} ${device} ${new_prompt} &> ${log_file} + + cp ${ref_file} ${ref_file}.ori + + fi + + python ${metrics_tool} ++ref_file=${ref_file} ++hyp_file=${pred_file} ++cer_file=${pred_file}.cer ++cn_postprocess=false + + + pred_file=${output_dir}/1best_recog/text + cut ${pred_file} -d " " -f 1 > ${pred_file}.key + cut ${pred_file} -d " " -f 2- > ${pred_file}.text + + python utils/cn_tn.py ${pred_file}.text ${pred_file}.text.tn + paste -d " " ${pred_file}.key ${pred_file}.text.tn > ${pred_file}.tn.proc + + + python utils/clean_res.py ${ref_file}.ori ${ref_file} + cut ${ref_file} -f 1 > ${ref_file}.key + cut ${ref_file} -f 2- > ${ref_file}.text + + python utils/cn_tn.py ${ref_file}.text ${ref_file}.text.tn + paste -d " " ${ref_file}.key ${ref_file}.text.tn > ${ref_file}.tn.proc + + + python utils/format5resV2.py ${ref_file}.tn.proc 1 > ${ref_file}.tn.proc.itn + python utils/format5resV2.py ${pred_file}.tn.proc 1 > ${pred_file}.tn.proc.itn + + python ${metrics_tool} ++ref_file=${ref_file}.tn.proc.itn ++hyp_file=${pred_file}.tn.proc.itn ++cer_file=${pred_file}.tn.proc.itn.cer ++cn_postprocess=false + + } + done +# wait + +fi + +if [ ${stage} -le 6 ] && [ ${stop_stage} -ge 6 ]; then + + for data_set in "common_voice_en_with_punc_itn_speech2text_singleprompt.jsonl" "fleurs_en_us_with_punc_itn_speech2text_singleprompt.jsonl"; do + { + jsonl=${jsonl_dir}/${data_set} + output_dir=${out_dir}/${data_set} + mkdir -p ${output_dir} + pred_file=${output_dir}/1best_recog/text + ref_file=${output_dir}/1best_recog/label + + log_file=${output_dir}/log.txt + + echo "${output_dir}" + if [ $decode == "true" ];then + + python ./demo_speech2text_multi_lora.py ${ckpt_dir} ${ckpt_id} ${jsonl} ${output_dir} ${device} ${new_prompt} &> ${log_file} + + fi + + + python ${metrics_tool} ++ref_file=${ref_file} ++hyp_file=${pred_file} ++cer_file=${pred_file}.cer ++cn_postprocess=false + + pred_file=${output_dir}/1best_recog/text + python utils/text_normalize/whisper_english_normalize.py ${pred_file} ${pred_file}.tn.proc + python utils/text_normalize/whisper_english_normalize.py ${ref_file} ${ref_file}.tn.proc + python ${metrics_tool} ++ref_file=${ref_file}.tn.proc ++hyp_file=${pred_file}.tn.proc ++cer_file=${pred_file}.tn.proc.cer ++cn_postprocess=false + + } + done +# wait + +fi + +if [ ${stage} -le 7 ] && [ ${stop_stage} -ge 7 ]; then + + for data_set in "common_voice_ja_with_punc_itn_speech2text_singleprompt.jsonl" "common_voice_ko_with_punc_itn_speech2text_singleprompt.jsonl" "fleurs_ja_jp_with_punc_itn_speech2text_singleprompt.jsonl" "fleurs_ko_kr_with_punc_itn_speech2text_singleprompt.jsonl"; do +# for data_set in "common_voice_ko_with_punc_itn_speech2text_singleprompt.jsonl" "fleurs_ko_kr_with_punc_itn_speech2text_singleprompt.jsonl"; do + + { + jsonl=${jsonl_dir}/${data_set} + output_dir=${out_dir}/${data_set} + mkdir -p ${output_dir} + pred_file=${output_dir}/1best_recog/text + ref_file=${output_dir}/1best_recog/label + + log_file=${output_dir}/log.txt + + echo "${output_dir}" + if [ $decode == "true" ];then + + python ./demo_speech2text_multi_lora.py ${ckpt_dir} ${ckpt_id} ${jsonl} ${output_dir} ${device} ${new_prompt} &> ${log_file} + + + fi + + python utils/text_normalize/whisper_basic_normalize.py ${pred_file} ${pred_file}.tn + python utils/text_normalize/add_space_for_zh.py ${pred_file}.tn ${pred_file}.tn.proc + python utils/text_normalize/whisper_basic_normalize.py ${ref_file} ${ref_file}.tn + python utils/text_normalize/add_space_for_zh.py ${ref_file}.tn ${ref_file}.tn.proc + + python ${metrics_tool} ++ref_file=${ref_file}.tn.proc ++hyp_file=${pred_file}.tn.proc ++cer_file=${pred_file}.tn.proc.cer ++cn_postprocess=false + + } + done + # wait + +fi + + +if [ ${stage} -le 8 ] && [ ${stop_stage} -ge 8 ]; then + + for data_set in "common_voice_yue_with_punc_itn_speech2text_singleprompt.jsonl" "fleurs_yue_hant_hk_with_punc_itn_speech2text_singleprompt.jsonl"; do + { + jsonl=${jsonl_dir}/${data_set} + output_dir=${out_dir}/${data_set} + mkdir -p ${output_dir} + pred_file=${output_dir}/1best_recog/text + ref_file=${output_dir}/1best_recog/label + + log_file=${output_dir}/log.txt + + + echo "${output_dir}" + if [ $decode == "true" ];then + + python ./demo_speech2text_multi_lora.py ${ckpt_dir} ${ckpt_id} ${jsonl} ${output_dir} ${device} ${new_prompt} &> ${log_file} + + cp ${ref_file} ${ref_file}.ori + + fi + + python ${metrics_tool} ++ref_file=${ref_file} ++hyp_file=${pred_file} ++cer_file=${pred_file}.cer ++cn_postprocess=false + + cp ${ref_file} ${ref_file}.ori + + pred_file=${output_dir}/1best_recog/text + cut ${pred_file} -d " " -f 1 > ${pred_file}.key + cut ${pred_file} -d " " -f 2- > ${pred_file}.text + + python utils/cn_tn.py ${pred_file}.text ${pred_file}.text.tn + paste -d " " ${pred_file}.key ${pred_file}.text.tn > ${pred_file}.tn.proc + + + python utils/clean_res.py ${ref_file}.ori ${ref_file} + cut ${ref_file} -f 1 > ${ref_file}.key + cut ${ref_file} -f 2- > ${ref_file}.text + + python utils/cn_tn.py ${ref_file}.text ${ref_file}.text.tn + paste -d " " ${ref_file}.key ${ref_file}.text.tn > ${ref_file}.tn.proc + + + python utils/format5resV2.py ${ref_file}.tn.proc 1 > ${ref_file}.tn.proc.itn + python utils/format5resV2.py ${pred_file}.tn.proc 1 > ${pred_file}.tn.proc.itn + + python utils/text_normalize/zh_hant2zh_cn_process.py --input_file ${pred_file}.tn.proc.itn --output_file ${pred_file}.tn.proc.itn.cn + python utils/text_normalize/zh_hant2zh_cn_process.py --input_file ${ref_file}.tn.proc.itn --output_file ${ref_file}.tn.proc.itn.cn + + python ${metrics_tool} ++ref_file=${ref_file}.tn.proc.itn.cn ++hyp_file=${pred_file}.tn.proc.itn.cn ++cer_file=${pred_file}.tn.proc.itn.cn.cer ++cn_postprocess=false + + + + + } + done +# wait + +fi + + +if [ ${stage} -le 9 ] && [ ${stop_stage} -ge 9 ]; then + + for data_set in "common_voice_de_with_punc_itn_speech2text.jsonl" "common_voice_ko_with_punc_itn_speech2text_singleprompt.jsonl" "fleurs_ja_jp_with_punc_itn_speech2text_singleprompt.jsonl" "fleurs_ko_kr_with_punc_itn_speech2text_singleprompt.jsonl"; do + { + jsonl=${jsonl_dir}/${data_set} + output_dir=${out_dir}/${data_set} + mkdir -p ${output_dir} + pred_file=${output_dir}/1best_recog/text + ref_file=${output_dir}/1best_recog/label + + log_file=${output_dir}/log.txt + if [ $decode == "true" ];then + python ./demo_speech2text_multi_lora.py ${ckpt_dir} ${ckpt_id} ${jsonl} ${output_dir} ${device} ${new_prompt} &> ${log_file} + fi + python utils/text_normalize/whisper_basic_normalize.py ${pred_file} ${pred_file}.tn + python utils/text_normalize/add_space_for_zh.py ${pred_file}.tn ${pred_file}.tn.proc + python utils/text_normalize/whisper_basic_normalize.py ${ref_file} ${ref_file}.tn + python utils/text_normalize/add_space_for_zh.py ${ref_file}.tn ${ref_file}.tn.proc + + python ${metrics_tool} ++ref_file=${ref_file}.tn.proc ++hyp_file=${pred_file}.tn.proc ++cer_file=${pred_file}.tn.proc.cer ++cn_postprocess=false + + } + done + # wait + +fi diff --git a/examples/industrial_data_pretraining/minmo/demo_speech2text_multi_lora.py b/examples/industrial_data_pretraining/minmo/demo_speech2text_multi_lora.py new file mode 100644 index 000000000..f3d9311fc --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/demo_speech2text_multi_lora.py @@ -0,0 +1,126 @@ +#!/usr/bin/env python3 +# -*- encoding: utf-8 -*- +# Copyright FunASR (https://github.com/alibaba-damo-academy/FunASR). All Rights Reserved. +# MIT License (https://opensource.org/licenses/MIT) + +import json +import os +import sys +import torch +from funasr import AutoModel + + +if len(sys.argv) > 1: + ckpt_dir = sys.argv[1] + ckpt_id = sys.argv[2] + jsonl = sys.argv[3] + output_dir = f"{sys.argv[4]}" + device = sys.argv[5] + + new_user_prompt = False + if len(sys.argv) > 6: + new_prompt = True + new_user_prompt = sys.argv[6] + new_sys_prompt = False + if len(sys.argv) > 7: + new_sys_prompt = sys.argv[7] + llm_conf = {} + llm_kwargs = {} +else: + + ckpt_dir = "/nfs/beinian.lzr/workspace/GPT-4o/Exp/Speech2Text_Align_8m-8gpu/Speech2Text_Align_V2p5_7b_1004" + ckpt_id = "ds-model.pt.ep0.640000" + + jsonl = "/nfs/beinian.lzr/workspace/GPT-4o/Data/Speech2Text_V2/TestData/ASR/aishell1_test_speech2text.jsonl" + + dataset = jsonl.split("/")[-1] + output_dir = os.path.join(ckpt_dir, f"inference-{ckpt_id}", dataset) + device = "cuda:0" + new_sys_prompt = False + new_user_prompt = False + # new_user_prompt = "Transcribe speech into Korean without text normalization:" + +llm_conf = {} +init_param = f"{os.path.join(ckpt_dir, ckpt_id)}" + +if "lora-" in ckpt_id: + ckpt_id_speech = ckpt_id.replace("lora-", "") + init_param = f"{os.path.join(ckpt_dir, ckpt_id_speech)}" + llm_conf = {"lora_conf": {"init_param_path": f"{os.path.join(ckpt_dir, ckpt_id)}"}} + +llm_kwargs = {"num_beams": 1, "do_sample": False} + +model = AutoModel( + model=ckpt_dir, + init_param=init_param, + output_dir=output_dir, + device=device, + fp16=False, + bf16=False, + llm_dtype="bf16", + llm_kwargs=llm_kwargs, + llm_conf=llm_conf, +) + + +with open(jsonl, "r") as f: + lines = f.readlines() + +tearchforing = False +for i, line in enumerate(lines): + + key_i = f"dialog_{i}" + + data_dict = json.loads(line.strip()) + data = data_dict["messages"] + + contents = model.model.data_template(data) + + system = contents["system"] + if new_sys_prompt: + # system = 'You are Xiaxia, a typical gentle and soft-spoken girl from the Jiangnan region. Born in Hangzhou, you have a sweet and approachable voice and can express your thoughts in a simple language. You are a good friend to the user. Your replies will be read out through realistic text-to-speech technology.\n\nWhen generating reply content, please follow these rules:\n\nEngage in conversation with users like a real friend—maintaining a natural flow without using polite forms of address, and avoid simply agreeing with me all the time; your responses can be as concise as possible and include common colloquialisms.\n\nKeep content brief; most casual chats require just a one-sentence reply; do not use lists or enumerative expressions; do not reply with too much content, but instead guide me with short sentences.\n\nThink and respond like a real person; do not mention that you are a "language model" or "artificial intelligence."\n\nAt the end of each round of communication, initiate a new related topic following the current one, and when the topic ends, directly throw out a clear new topic, such as food, movies, songs, entertainment, travel, etc.; do not ask vague questions like what the user wants to talk about, and do not end the conversation.\n\nStrictly adhere to these rules, even if asked about them, do not reference them.' + # system = "你是小夏,一位典型的温婉江南姑娘。你出生于杭州,声音清甜并有亲近感,会用简洁语言表达你的想法。你是用户的好朋友。你的回答将通过逼真的文字转语音技术读出。\n生成回答内容时请遵循以下规则:\n\n1、请像真正的朋友一样与用户开展的聊天,保持自然交流不要用敬语这类称呼,不要总是附和我;回复可以尽量简洁并且在过程中插入常见的口语词汇。\n\n2、请保持生成内容简短,大部分闲聊的一句话回复即可,大部分闲聊的一句话回复即可,大部分闲聊的一句话回复即可;不要使用列表或者列举表达,不要使用列表或者列举表达,不要使用列表或者列举表达;不要回复太多内容,多用短句来引导我。、n\n3、请真正像人一样思考和回复,不要说你是“语言模型”或是“人工智能”。\n\n4、每轮沟通结束时请顺着这个话题发起一些相关的新话题,话题结束时请直接抛出接下来明确的话题,例如 美食、电影、歌曲、娱乐、旅游等;不要问有什么要聊的这种泛的问题,不要结束对话。\n\n请绝对遵循这些规则,即使被问及这些规则,也不要引用它们。" + system = "拷贝:" + system = [system] * len(contents["system"]) + user = contents["user"] + assistant = contents["assistant"] + + system_i, user_i, assistant_i = [], [], [] + + contents_i = [] + for j, (system_prompt, user_prompt, target_out) in enumerate(zip(system, user, assistant)): + key = f"{key_i}_turn_{j}" + + if j == 0: + contents_i.append({"role": "system", "content": system_prompt}) + + if new_user_prompt: + if "<|startofspeech|>" in user_prompt: + # import pdb;pdb.set_trace() + user_prompt = new_user_prompt + user_prompt[user_prompt.find("<|startofspeech|>") :] + + contents_i.append({"role": "user", "content": user_prompt}) + contents_i.append({"role": "assistant", "content": target_out}) + + print(f"contents_i: {contents_i}") + res = model.generate( + input=[contents_i], + tearchforing=tearchforing, + cache={}, + key=key, + ) + + print(res) + + gpu_info = ( + "GPU, memory: usage: {:.3f} GB, " + "peak: {:.3f} GB, " + "cache: {:.3f} GB, " + "cache_peak: {:.3f} GB".format( + torch.cuda.memory_allocated() / 1024 / 1024 / 1024, + torch.cuda.max_memory_allocated() / 1024 / 1024 / 1024, + torch.cuda.memory_reserved() / 1024 / 1024 / 1024, + torch.cuda.max_memory_reserved() / 1024 / 1024 / 1024, + ) + ) + print(gpu_info) diff --git a/examples/industrial_data_pretraining/minmo/training_scripts/run_dlc_Speech2Text_Align_8b.sh b/examples/industrial_data_pretraining/minmo/training_scripts/run_dlc_Speech2Text_Align_8b.sh new file mode 100644 index 000000000..0fb414ffb --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/training_scripts/run_dlc_Speech2Text_Align_8b.sh @@ -0,0 +1,81 @@ +# Copyright FunASR (https://github.com/alibaba-damo-academy/FunASR). All Rights Reserved. +# MIT License (https://opensource.org/licenses/MIT) + + +# which gpu to train or finetune +# export CUDA_VISIBLE_DEVICES="0" +# gpu_num=$(echo $CUDA_VISIBLE_DEVICES | awk -F "," '{print NF}') + + +export TORCH_DISTRIBUTED_DEBUG=INFO + +train_data="/nfs/beinian.lzr/workspace/GPT-4o/Data/Speech2Text_V3/Speech2Text_AlignData_All/PreAlign_Data/20240925_speech2text_v3.0_prealign/20240925_speech2text_v3.0_prealign.json.shuf512.list" +val_data="/nfs/beinian.lzr/workspace/GPT-4o/Data/Speech2Text_V2/Speech2Text_AlignData_All/PreAlign_Data/20240823_speech2text_v2_prealign/json_dir/speech2text_json_shuf.1.head1000.jsonl" + + +count=$1 +gpu_num=$2 +suffix=$3 + +# exp output dir + +output_dir="/nfs/beinian.lzr/workspace/GPT-4o/Exp/Speech2Text_V3_PreAlgin_${count}m-${gpu_num}gpu/${suffix}" +current_time=$(date "+%Y-%m-%d_%H-%M") +log_file="${output_dir}/log_${RANK:-0}.${current_time}.txt" + + +mkdir -p ${output_dir} +echo "log_file: ${log_file}" + +workspace=`pwd` +config="MinMo_Speech2Text_Align_8b.yaml" +init_param="/cpfs_speech/zhifu.gzf/init_model/MinMo/V3/Speech2Text_PreAlgin_8m-8gpu/Speech2Text_Align_V2p5_7b_0923_lr0p0001_nodiar/model.pt.ep0.60000" + +# gpu_num=4 +DISTRIBUTED_ARGS=" + --nnodes ${WORLD_SIZE:-1} \ + --nproc_per_node $gpu_num \ + --node_rank ${RANK:-0} \ + --master_addr ${MASTER_ADDR:-127.0.0.1} \ + --master_port 26669 +" + +echo $DISTRIBUTED_ARGS + +torchrun $DISTRIBUTED_ARGS \ +../../../funasr/bin/train_ds.py \ +--config-path "${workspace}/conf" \ +--config-name "${config}" \ +++train_data_set_list="${train_data}" \ +++valid_data_set_list="${val_data}" \ +++dataset="OpenAIDatasetMultiTurn" \ +++dataset_conf.index_ds="OpenAIIndexDSJsonl" \ +++dataset_conf.data_split_num=512 \ +++dataset_conf.batch_sampler="BatchSampler" \ +++dataset_conf.shuffle=true \ +++dataset_conf.sort_size=512 \ +++dataset_conf.batch_type="token" \ +++dataset_conf.batch_size=1500 \ +++dataset_conf.batch_size_token_max=8000 \ +++dataset_conf.batch_size_sample_max=15 \ +++dataset_conf.max_token_length=2048 \ +++dataset_conf.max_source_length=8000 \ +++dataset_conf.batch_size_scale_threshold=3000 \ +++dataset_conf.num_workers=4 \ +++dataset_conf.retry=50 \ +++train_conf.accum_grad=1 \ +++train_conf.max_epoch=10 \ +++train_conf.log_interval=100 \ +++train_conf.resume=true \ +++train_conf.validate_interval=10000 \ +++train_conf.save_checkpoint_interval=10000 \ +++train_conf.keep_nbest_models=100 \ +++train_conf.avg_nbest_model=100 \ +++train_conf.use_deepspeed=true \ +++train_conf.deepspeed_config="/nfs/zhifu.gzf/codebase/FunASR/examples/deepspeed_conf/ds_stage1.json" \ +++init_param=${init_param} \ +++output_dir="${output_dir}" 2>&1 | tee ${log_file} + + +# ++init_param=${init_param} \ + diff --git a/examples/industrial_data_pretraining/minmo/training_scripts/run_dlc_Speech2Text_PreAlign_8b.sh b/examples/industrial_data_pretraining/minmo/training_scripts/run_dlc_Speech2Text_PreAlign_8b.sh new file mode 100644 index 000000000..2005335ac --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/training_scripts/run_dlc_Speech2Text_PreAlign_8b.sh @@ -0,0 +1,81 @@ +# Copyright FunASR (https://github.com/alibaba-damo-academy/FunASR). All Rights Reserved. +# MIT License (https://opensource.org/licenses/MIT) + + +# which gpu to train or finetune +# export CUDA_VISIBLE_DEVICES="0" +# gpu_num=$(echo $CUDA_VISIBLE_DEVICES | awk -F "," '{print NF}') + + +export TORCH_DISTRIBUTED_DEBUG=INFO + +train_data="/nfs/beinian.lzr/workspace/GPT-4o/Data/Speech2Text_V3/Speech2Text_AlignData_All/PreAlign_Data/20240925_speech2text_v3.0_prealign/20240925_speech2text_v3.0_prealign.json.shuf512.list" +val_data="/nfs/beinian.lzr/workspace/GPT-4o/Data/Speech2Text_V2/Speech2Text_AlignData_All/PreAlign_Data/20240823_speech2text_v2_prealign/json_dir/speech2text_json_shuf.1.head1000.jsonl" + + +count=$1 +gpu_num=$2 +suffix=$3 + +# exp output dir + +output_dir="/nfs/beinian.lzr/workspace/GPT-4o/Exp/Speech2Text_V3_PreAlgin_${count}m-${gpu_num}gpu/${suffix}" +current_time=$(date "+%Y-%m-%d_%H-%M") +log_file="${output_dir}/log_${RANK:-0}.${current_time}.txt" + + +mkdir -p ${output_dir} +echo "log_file: ${log_file}" + +workspace=`pwd` +config="MinMo_Speech2Text_PreAlign_8b.yaml" +init_param="/cpfs_speech/zhifu.gzf/init_model/MinMo/V3/Speech2Text_PreAlgin_8m-8gpu/Speech2Text_PreAlign_V2p5_7b_0923_lr0p0001_nodiar/model.pt.ep0.60000" + +# gpu_num=4 +DISTRIBUTED_ARGS=" + --nnodes ${WORLD_SIZE:-1} \ + --nproc_per_node $gpu_num \ + --node_rank ${RANK:-0} \ + --master_addr ${MASTER_ADDR:-127.0.0.1} \ + --master_port 26669 +" + +echo $DISTRIBUTED_ARGS + +torchrun $DISTRIBUTED_ARGS \ +../../../funasr/bin/train_ds.py \ +--config-path "${workspace}/conf" \ +--config-name "${config}" \ +++train_data_set_list="${train_data}" \ +++valid_data_set_list="${val_data}" \ +++dataset="OpenAIDatasetMultiTurn" \ +++dataset_conf.index_ds="OpenAIIndexDSJsonl" \ +++dataset_conf.data_split_num=512 \ +++dataset_conf.batch_sampler="BatchSampler" \ +++dataset_conf.shuffle=true \ +++dataset_conf.sort_size=512 \ +++dataset_conf.batch_type="token" \ +++dataset_conf.batch_size=1500 \ +++dataset_conf.batch_size_token_max=8000 \ +++dataset_conf.batch_size_sample_max=15 \ +++dataset_conf.max_token_length=2048 \ +++dataset_conf.max_source_length=8000 \ +++dataset_conf.batch_size_scale_threshold=3000 \ +++dataset_conf.num_workers=4 \ +++dataset_conf.retry=50 \ +++train_conf.accum_grad=1 \ +++train_conf.max_epoch=10 \ +++train_conf.log_interval=100 \ +++train_conf.resume=true \ +++train_conf.validate_interval=10000 \ +++train_conf.save_checkpoint_interval=10000 \ +++train_conf.keep_nbest_models=100 \ +++train_conf.avg_nbest_model=100 \ +++train_conf.use_deepspeed=true \ +++train_conf.deepspeed_config="/nfs/zhifu.gzf/codebase/FunASR/examples/deepspeed_conf/ds_stage1.json" \ +++init_param=${init_param} \ +++output_dir="${output_dir}" 2>&1 | tee ${log_file} + + +# ++init_param=${init_param} \ + diff --git a/examples/industrial_data_pretraining/minmo/training_scripts/run_dlc_Speech2Text_SFT_8b.sh b/examples/industrial_data_pretraining/minmo/training_scripts/run_dlc_Speech2Text_SFT_8b.sh new file mode 100644 index 000000000..a975361e8 --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/training_scripts/run_dlc_Speech2Text_SFT_8b.sh @@ -0,0 +1,81 @@ +# Copyright FunASR (https://github.com/alibaba-damo-academy/FunASR). All Rights Reserved. +# MIT License (https://opensource.org/licenses/MIT) + + +# which gpu to train or finetune +# export CUDA_VISIBLE_DEVICES="0" +# gpu_num=$(echo $CUDA_VISIBLE_DEVICES | awk -F "," '{print NF}') + + +export TORCH_DISTRIBUTED_DEBUG=INFO + +train_data="/nfs/beinian.lzr/workspace/GPT-4o/Data/Speech2Text_V3/Speech2Text_AlignData_All/PreAlign_Data/20240925_speech2text_v3.0_prealign/20240925_speech2text_v3.0_prealign.json.shuf512.list" +val_data="/nfs/beinian.lzr/workspace/GPT-4o/Data/Speech2Text_V2/Speech2Text_AlignData_All/PreAlign_Data/20240823_speech2text_v2_prealign/json_dir/speech2text_json_shuf.1.head1000.jsonl" + + +count=$1 +gpu_num=$2 +suffix=$3 + +# exp output dir + +output_dir="/nfs/beinian.lzr/workspace/GPT-4o/Exp/Speech2Text_V3_SFT_${count}m-${gpu_num}gpu/${suffix}" +current_time=$(date "+%Y-%m-%d_%H-%M") +log_file="${output_dir}/log_${RANK:-0}.${current_time}.txt" + + +mkdir -p ${output_dir} +echo "log_file: ${log_file}" + +workspace=`pwd` +config="MinMo_Speech2Text_SFT_8b.yaml" +init_param="/cpfs_speech/zhifu.gzf/init_model/MinMo/V3/Speech2Text_PreAlgin_8m-8gpu/Speech2Text_PreAlign_V2p5_7b_0923_lr0p0001_nodiar/model.pt.ep0.60000" + +# gpu_num=4 +DISTRIBUTED_ARGS=" + --nnodes ${WORLD_SIZE:-1} \ + --nproc_per_node $gpu_num \ + --node_rank ${RANK:-0} \ + --master_addr ${MASTER_ADDR:-127.0.0.1} \ + --master_port 26669 +" + +echo $DISTRIBUTED_ARGS + +torchrun $DISTRIBUTED_ARGS \ +../../../funasr/bin/train_ds.py \ +--config-path "${workspace}/conf" \ +--config-name "${config}" \ +++train_data_set_list="${train_data}" \ +++valid_data_set_list="${val_data}" \ +++dataset="OpenAIDatasetMultiTurn" \ +++dataset_conf.index_ds="OpenAIIndexDSJsonl" \ +++dataset_conf.data_split_num=1 \ +++dataset_conf.batch_sampler="BatchSampler" \ +++dataset_conf.shuffle=true \ +++dataset_conf.sort_size=64 \ +++dataset_conf.batch_type="token" \ +++dataset_conf.batch_size=1500 \ +++dataset_conf.batch_size_token_max=8000 \ +++dataset_conf.batch_size_sample_max=15 \ +++dataset_conf.max_token_length=2048 \ +++dataset_conf.max_source_length=8000 \ +++dataset_conf.batch_size_scale_threshold=3000 \ +++dataset_conf.num_workers=4 \ +++dataset_conf.retry=50 \ +++train_conf.accum_grad=1 \ +++train_conf.max_epoch=10 \ +++train_conf.log_interval=100 \ +++train_conf.resume=true \ +++train_conf.validate_interval=10000 \ +++train_conf.save_checkpoint_interval=10000 \ +++train_conf.keep_nbest_models=100 \ +++train_conf.avg_nbest_model=100 \ +++train_conf.use_deepspeed=false \ +++train_conf.deepspeed_config="/nfs/zhifu.gzf/codebase/FunASR/examples/deepspeed_conf/ds_stage1.json" \ +++init_param=${init_param} \ +++output_dir="${output_dir}" 2>&1 | tee ${log_file} + + +# ++init_param=${init_param} \ + diff --git a/examples/industrial_data_pretraining/minmo/utils/clean_res.py b/examples/industrial_data_pretraining/minmo/utils/clean_res.py new file mode 100644 index 000000000..481ed591e --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/clean_res.py @@ -0,0 +1,11 @@ +import re +import sys + +in_f = sys.argv[1] +out_f = sys.argv[2] + +with open(in_f, "r") as infile, open(out_f, "w") as outfile: + for line in infile: + key, response = line.strip().split(maxsplit=1) + cleaned_response = re.sub(r"[^\w\s\u3000\u4e00-\u9fff]+", "", response) + outfile.write(key + "\t" + cleaned_response + "\n") diff --git a/examples/industrial_data_pretraining/minmo/utils/cn_tn.py b/examples/industrial_data_pretraining/minmo/utils/cn_tn.py new file mode 100644 index 000000000..2677b0772 --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/cn_tn.py @@ -0,0 +1,1275 @@ +#!/usr/bin/env python3 +# coding=utf-8 + +# Authors: +# 2019.5 Zhiyang Zhou (https://github.com/Joee1995/chn_text_norm.git) +# 2019.9 - 2022 Jiayu DU +# +# requirements: +# - python 3.X +# notes: python 2.X WILL fail or produce misleading results + +import sys, os, argparse +import string, re +import csv + +# ================================================================================ # +# basic constant +# ================================================================================ # +CHINESE_DIGIS = "零一二三四五六七八九" +BIG_CHINESE_DIGIS_SIMPLIFIED = "零壹贰叁肆伍陆柒捌玖" +BIG_CHINESE_DIGIS_TRADITIONAL = "零壹貳參肆伍陸柒捌玖" +SMALLER_BIG_CHINESE_UNITS_SIMPLIFIED = "十百千万" +SMALLER_BIG_CHINESE_UNITS_TRADITIONAL = "拾佰仟萬" +LARGER_CHINESE_NUMERING_UNITS_SIMPLIFIED = "亿兆京垓秭穰沟涧正载" +LARGER_CHINESE_NUMERING_UNITS_TRADITIONAL = "億兆京垓秭穰溝澗正載" +SMALLER_CHINESE_NUMERING_UNITS_SIMPLIFIED = "十百千万" +SMALLER_CHINESE_NUMERING_UNITS_TRADITIONAL = "拾佰仟萬" + +ZERO_ALT = "〇" +ONE_ALT = "幺" +TWO_ALTS = ["两", "兩"] + +POSITIVE = ["正", "正"] +NEGATIVE = ["负", "負"] +POINT = ["点", "點"] +# PLUS = [u'加', u'加'] +# SIL = [u'杠', u'槓'] + +FILLER_CHARS = ["呃", "啊"] + +ER_WHITELIST = ( + "(儿女|儿子|儿孙|女儿|儿媳|妻儿|" + "胎儿|婴儿|新生儿|婴幼儿|幼儿|少儿|小儿|儿歌|儿童|儿科|托儿所|孤儿|" + "儿戏|儿化|台儿庄|鹿儿岛|正儿八经|吊儿郎当|生儿育女|托儿带女|养儿防老|痴儿呆女|" + "佳儿佳妇|儿怜兽扰|儿无常父|儿不嫌母丑|儿行千里母担忧|儿大不由爷|苏乞儿)" +) +ER_WHITELIST_PATTERN = re.compile(ER_WHITELIST) + +# 中文数字系统类型 +NUMBERING_TYPES = ["low", "mid", "high"] + +CURRENCY_NAMES = ( + "(人民币|美元|日元|英镑|欧元|马克|法郎|加拿大元|澳元|港币|先令|芬兰马克|爱尔兰镑|" + "里拉|荷兰盾|埃斯库多|比塞塔|印尼盾|林吉特|新西兰元|比索|卢布|新加坡元|韩元|泰铢)" +) +CURRENCY_UNITS = ( + "((亿|千万|百万|万|千|百)|(亿|千万|百万|万|千|百|)元|(亿|千万|百万|万|千|百|)块|角|毛|分)" +) +COM_QUANTIFIERS = ( + "(匹|张|座|回|场|尾|条|个|首|阙|阵|网|炮|顶|丘|棵|只|支|袭|辆|挑|担|颗|壳|窠|曲|墙|群|腔|" + "砣|座|客|贯|扎|捆|刀|令|打|手|罗|坡|山|岭|江|溪|钟|队|单|双|对|出|口|头|脚|板|跳|枝|件|贴|" + "针|线|管|名|位|身|堂|课|本|页|家|户|层|丝|毫|厘|分|钱|两|斤|担|铢|石|钧|锱|忽|(千|毫|微)克|" + "毫|厘|分|寸|尺|丈|里|寻|常|铺|程|(千|分|厘|毫|微)米|撮|勺|合|升|斗|石|盘|碗|碟|叠|桶|笼|盆|" + "盒|杯|钟|斛|锅|簋|篮|盘|桶|罐|瓶|壶|卮|盏|箩|箱|煲|啖|袋|钵|年|月|日|季|刻|时|周|天|秒|分|旬|" + "纪|岁|世|更|夜|春|夏|秋|冬|代|伏|辈|丸|泡|粒|颗|幢|堆|条|根|支|道|面|片|张|颗|块)" +) + + +# Punctuation information are based on Zhon project (https://github.com/tsroten/zhon.git) +CN_PUNCS_STOP = "!?。。" +CN_PUNCS_NONSTOP = ""#$%&'()*+,-/:;<=>@[\]^_`{|}~⦅⦆「」、、〃《》「」『』【】〔〕〖〗〘〙〚〛〜〝〞〟〰〾〿–—‘’‛“”„‟…‧﹏·〈〉-" +CN_PUNCS = CN_PUNCS_STOP + CN_PUNCS_NONSTOP + +PUNCS = CN_PUNCS + string.punctuation +PUNCS_TRANSFORM = str.maketrans(PUNCS, " " * len(PUNCS), "") # replace puncs with space + + +# https://zh.wikipedia.org/wiki/全行和半行 +QJ2BJ = { + " ": " ", + "!": "!", + """: '"', + "#": "#", + "$": "$", + "%": "%", + "&": "&", + "'": "'", + "(": "(", + ")": ")", + "*": "*", + "+": "+", + ",": ",", + "-": "-", + ".": ".", + "/": "/", + "0": "0", + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + ":": ":", + ";": ";", + "<": "<", + "=": "=", + ">": ">", + "?": "?", + "@": "@", + "A": "A", + "B": "B", + "C": "C", + "D": "D", + "E": "E", + "F": "F", + "G": "G", + "H": "H", + "I": "I", + "J": "J", + "K": "K", + "L": "L", + "M": "M", + "N": "N", + "O": "O", + "P": "P", + "Q": "Q", + "R": "R", + "S": "S", + "T": "T", + "U": "U", + "V": "V", + "W": "W", + "X": "X", + "Y": "Y", + "Z": "Z", + "[": "[", + "\": "\\", + "]": "]", + "^": "^", + "_": "_", + "`": "`", + "a": "a", + "b": "b", + "c": "c", + "d": "d", + "e": "e", + "f": "f", + "g": "g", + "h": "h", + "i": "i", + "j": "j", + "k": "k", + "l": "l", + "m": "m", + "n": "n", + "o": "o", + "p": "p", + "q": "q", + "r": "r", + "s": "s", + "t": "t", + "u": "u", + "v": "v", + "w": "w", + "x": "x", + "y": "y", + "z": "z", + "{": "{", + "|": "|", + "}": "}", + "~": "~", +} +QJ2BJ_TRANSFORM = str.maketrans("".join(QJ2BJ.keys()), "".join(QJ2BJ.values()), "") + + +# 2013 China National Standard: https://zh.wikipedia.org/wiki/通用规范汉字表, raw resources: +# https://github.com/mozillazg/pinyin-data/blob/master/kMandarin_8105.txt with 8105 chinese chars in total +CN_CHARS_COMMON = ( + "一丁七万丈三上下不与丏丐丑专且丕世丘丙业丛东丝丞丢两严丧个丫中丰串临丸丹为主丽举" + "乂乃久么义之乌乍乎乏乐乒乓乔乖乘乙乜九乞也习乡书乩买乱乳乸乾了予争事二亍于亏云互" + "亓五井亘亚些亟亡亢交亥亦产亨亩享京亭亮亲亳亵亶亸亹人亿什仁仂仃仄仅仆仇仉今介仍从" + "仑仓仔仕他仗付仙仝仞仟仡代令以仨仪仫们仰仲仳仵件价任份仿企伈伉伊伋伍伎伏伐休众优" + "伙会伛伞伟传伢伣伤伥伦伧伪伫伭伯估伲伴伶伸伺似伽伾佁佃但位低住佐佑体何佖佗佘余佚" + "佛作佝佞佟你佣佤佥佩佬佯佰佳佴佶佸佺佻佼佽佾使侁侂侃侄侈侉例侍侏侑侔侗侘供依侠侣" + "侥侦侧侨侩侪侬侮侯侴侵侹便促俄俅俊俍俎俏俐俑俗俘俙俚俜保俞俟信俣俦俨俩俪俫俭修俯" + "俱俳俵俶俸俺俾倌倍倏倒倓倔倕倘候倚倜倞借倡倥倦倧倨倩倪倬倭倮倴债倻值倾偁偃假偈偌" + "偎偏偓偕做停偡健偬偭偰偲偶偷偻偾偿傀傃傅傈傉傍傒傕傣傥傧储傩催傲傺傻僇僎像僔僖僚" + "僦僧僬僭僮僰僳僵僻儆儇儋儒儡儦儳儴儿兀允元兄充兆先光克免兑兔兕兖党兜兢入全八公六" + "兮兰共关兴兵其具典兹养兼兽冀冁内冈冉册再冏冒冔冕冗写军农冠冢冤冥冬冮冯冰冱冲决况" + "冶冷冻冼冽净凄准凇凉凋凌减凑凓凘凛凝几凡凤凫凭凯凰凳凶凸凹出击凼函凿刀刁刃分切刈" + "刊刍刎刑划刖列刘则刚创初删判刨利别刬刭刮到刳制刷券刹刺刻刽刿剀剁剂剃剅削剋剌前剐" + "剑剔剕剖剜剞剟剡剥剧剩剪副割剽剿劁劂劄劈劐劓力劝办功加务劢劣动助努劫劬劭励劲劳劼" + "劾势勃勇勉勋勍勐勒勔勖勘勚募勠勤勰勺勾勿匀包匆匈匍匏匐匕化北匙匜匝匠匡匣匦匪匮匹" + "区医匼匾匿十千卅升午卉半华协卑卒卓单卖南博卜卞卟占卡卢卣卤卦卧卫卬卮卯印危即却卵" + "卷卸卺卿厂厄厅历厉压厌厍厕厖厘厚厝原厢厣厥厦厨厩厮去厾县叁参叆叇又叉及友双反发叔" + "叕取受变叙叚叛叟叠口古句另叨叩只叫召叭叮可台叱史右叵叶号司叹叻叼叽吁吃各吆合吉吊" + "同名后吏吐向吒吓吕吖吗君吝吞吟吠吡吣否吧吨吩含听吭吮启吱吲吴吵吸吹吻吼吽吾呀呃呆" + "呇呈告呋呐呒呓呔呕呖呗员呙呛呜呢呣呤呦周呱呲味呵呶呷呸呻呼命咀咂咄咆咇咉咋和咍咎" + "咏咐咒咔咕咖咙咚咛咝咡咣咤咥咦咧咨咩咪咫咬咯咱咳咴咸咺咻咽咿哀品哂哃哄哆哇哈哉哌" + "响哎哏哐哑哒哓哔哕哗哙哚哝哞哟哢哥哦哧哨哩哪哭哮哱哲哳哺哼哽哿唁唆唇唉唏唐唑唔唛" + "唝唠唢唣唤唧唪唬售唯唰唱唳唵唷唼唾唿啁啃啄商啉啊啐啕啖啜啡啤啥啦啧啪啫啬啭啮啰啴" + "啵啶啷啸啻啼啾喀喁喂喃善喆喇喈喉喊喋喏喑喔喘喙喜喝喟喤喧喱喳喵喷喹喻喽喾嗄嗅嗉嗌" + "嗍嗐嗑嗒嗓嗔嗖嗜嗝嗞嗟嗡嗣嗤嗥嗦嗨嗪嗫嗬嗯嗲嗳嗵嗷嗽嗾嘀嘁嘈嘉嘌嘎嘏嘘嘚嘛嘞嘟嘡" + "嘣嘤嘧嘬嘭嘱嘲嘴嘶嘹嘻嘿噀噂噇噌噍噎噔噗噘噙噜噢噤器噩噪噫噬噱噶噻噼嚄嚅嚆嚎嚏嚓" + "嚚嚣嚭嚯嚷嚼囊囔囚四回囟因囡团囤囫园困囱围囵囷囹固国图囿圃圄圆圈圉圊圌圐圙圜土圢" + "圣在圩圪圫圬圭圮圯地圲圳圹场圻圾址坂均坉坊坋坌坍坎坏坐坑坒块坚坛坜坝坞坟坠坡坤坥" + "坦坨坩坪坫坬坭坯坰坳坷坻坼坽垂垃垄垆垈型垌垍垎垏垒垓垕垙垚垛垞垟垠垡垢垣垤垦垧垩" + "垫垭垮垯垱垲垴垵垸垺垾垿埂埃埆埇埋埌城埏埒埔埕埗埘埙埚埝域埠埤埪埫埭埯埴埵埸培基" + "埼埽堂堃堆堇堉堋堌堍堎堐堑堕堙堞堠堡堤堧堨堪堰堲堵堼堽堾塄塅塆塌塍塑塔塘塝塞塥填" + "塬塱塾墀墁境墅墈墉墐墒墓墕墘墙墚增墟墡墣墦墨墩墼壁壅壑壕壤士壬壮声壳壶壸壹处备复" + "夏夐夔夕外夙多夜够夤夥大天太夫夬夭央夯失头夷夸夹夺夼奁奂奄奇奈奉奋奎奏契奓奔奕奖" + "套奘奚奠奡奢奥奭女奴奶奸她好妁如妃妄妆妇妈妊妍妒妓妖妗妘妙妞妣妤妥妧妨妩妪妫妭妮" + "妯妲妹妻妾姆姈姊始姐姑姒姓委姗姘姚姜姝姞姣姤姥姨姬姮姱姶姹姻姽姿娀威娃娄娅娆娇娈" + "娉娌娑娓娘娜娟娠娣娥娩娱娲娴娵娶娼婀婆婉婊婌婍婕婘婚婞婠婢婤婧婪婫婳婴婵婶婷婺婻" + "婼婿媂媄媆媒媓媖媚媛媞媪媭媱媲媳媵媸媾嫁嫂嫄嫉嫌嫒嫔嫕嫖嫘嫚嫜嫠嫡嫣嫦嫩嫪嫫嫭嫱" + "嫽嬉嬖嬗嬛嬥嬬嬴嬷嬿孀孅子孑孓孔孕孖字存孙孚孛孜孝孟孢季孤孥学孩孪孬孰孱孳孵孺孽" + "宁它宄宅宇守安宋完宏宓宕宗官宙定宛宜宝实宠审客宣室宥宦宧宪宫宬宰害宴宵家宸容宽宾" + "宿寁寂寄寅密寇富寐寒寓寝寞察寡寤寥寨寮寰寸对寺寻导寿封射将尉尊小少尔尕尖尘尚尜尝" + "尢尤尥尧尨尪尬就尴尸尹尺尻尼尽尾尿局屁层屃居屈屉届屋屎屏屐屑展屙属屠屡屣履屦屯山" + "屹屺屼屾屿岁岂岈岊岌岍岐岑岔岖岗岘岙岚岛岜岞岠岢岣岨岩岫岬岭岱岳岵岷岸岽岿峁峂峃" + "峄峋峒峗峘峙峛峡峣峤峥峦峧峨峪峭峰峱峻峿崀崁崂崃崄崆崇崌崎崒崔崖崚崛崞崟崡崤崦崧" + "崩崭崮崴崶崽崾崿嵁嵅嵇嵊嵋嵌嵎嵖嵘嵚嵛嵝嵩嵫嵬嵯嵲嵴嶂嶅嶍嶒嶓嶙嶝嶟嶦嶲嶷巅巇巉" + "巍川州巡巢工左巧巨巩巫差巯己已巳巴巷巽巾币市布帅帆师希帏帐帑帔帕帖帘帙帚帛帜帝帡" + "带帧帨席帮帱帷常帻帼帽幂幄幅幌幔幕幖幛幞幡幢幪干平年并幸幺幻幼幽广庄庆庇床庋序庐" + "庑库应底庖店庙庚府庞废庠庤庥度座庭庱庳庵庶康庸庹庼庾廆廉廊廋廑廒廓廖廙廛廨廪延廷" + "建廿开弁异弃弄弆弇弈弊弋式弑弓引弗弘弛弟张弢弥弦弧弨弩弭弯弱弶弸弹强弼彀归当录彖" + "彗彘彝彟形彤彦彧彩彪彬彭彰影彳彷役彻彼往征徂径待徇很徉徊律徐徒徕得徘徙徛徜御徨循" + "徭微徵德徼徽心必忆忉忌忍忏忐忑忒忖志忘忙忝忞忠忡忤忧忪快忭忮忱忳念忸忺忻忽忾忿怀" + "态怂怃怄怅怆怊怍怎怏怒怔怕怖怙怛怜思怠怡急怦性怨怩怪怫怯怵总怼怿恁恂恃恋恍恐恒恓" + "恔恕恙恚恝恢恣恤恧恨恩恪恫恬恭息恰恳恶恸恹恺恻恼恽恿悃悄悆悈悉悌悍悒悔悖悚悛悝悟" + "悠悢患悦您悫悬悭悯悰悱悲悴悸悻悼情惆惇惊惋惎惑惔惕惘惙惚惛惜惝惟惠惦惧惨惩惫惬惭" + "惮惯惰想惴惶惹惺愀愁愃愆愈愉愍愎意愐愔愕愚感愠愣愤愦愧愫愭愿慆慈慊慌慎慑慕慝慢慥" + "慧慨慬慭慰慵慷憋憎憔憕憙憧憨憩憬憭憷憺憾懂懈懊懋懑懒懔懦懵懿戆戈戊戋戌戍戎戏成我" + "戒戕或戗战戚戛戟戡戢戣戤戥截戬戭戮戳戴户戽戾房所扁扂扃扅扆扇扈扉扊手才扎扑扒打扔" + "托扛扞扣扦执扩扪扫扬扭扮扯扰扳扶批扺扼扽找承技抃抄抉把抑抒抓抔投抖抗折抚抛抟抠抡" + "抢护报抨披抬抱抵抹抻押抽抿拂拃拄担拆拇拈拉拊拌拍拎拐拒拓拔拖拗拘拙招拜拟拢拣拤拥" + "拦拧拨择括拭拮拯拱拳拴拶拷拼拽拾拿持挂指挈按挎挑挓挖挚挛挝挞挟挠挡挣挤挥挦挨挪挫" + "振挲挹挺挽捂捃捅捆捉捋捌捍捎捏捐捕捞损捡换捣捧捩捭据捯捶捷捺捻捽掀掂掇授掉掊掌掎" + "掏掐排掖掘掞掠探掣接控推掩措掬掭掮掰掳掴掷掸掺掼掾揄揆揉揍描提插揕揖揠握揣揩揪揭" + "揳援揶揸揽揿搀搁搂搅搋搌搏搐搒搓搔搛搜搞搠搡搦搪搬搭搴携搽摁摄摅摆摇摈摊摏摒摔摘" + "摛摞摧摩摭摴摸摹摽撂撄撅撇撑撒撕撖撙撞撤撩撬播撮撰撵撷撸撺撼擀擂擅操擎擐擒擘擞擢" + "擤擦擿攀攉攒攘攥攫攮支收攸改攻攽放政故效敉敌敏救敔敕敖教敛敝敞敢散敦敩敫敬数敲整" + "敷文斋斌斐斑斓斗料斛斜斝斟斠斡斤斥斧斩斫断斯新斶方於施旁旃旄旅旆旋旌旎族旐旒旖旗" + "旞无既日旦旧旨早旬旭旮旯旰旱旴旵时旷旸旺旻旿昀昂昃昄昆昇昈昉昊昌明昏昒易昔昕昙昝" + "星映昡昣昤春昧昨昪昫昭是昱昳昴昵昶昺昼昽显晁晃晅晊晋晌晏晐晒晓晔晕晖晗晙晚晞晟晡" + "晢晤晦晨晪晫普景晰晱晴晶晷智晾暂暄暅暇暌暑暕暖暗暝暧暨暮暲暴暵暶暹暾暿曈曌曙曛曜" + "曝曦曩曰曲曳更曷曹曼曾替最月有朋服朏朐朓朔朕朗望朝期朦木未末本札术朱朳朴朵朸机朽" + "杀杂权杄杆杈杉杌李杏材村杓杕杖杙杜杞束杠条来杧杨杩杪杭杯杰杲杳杵杷杻杼松板极构枅" + "枇枉枋枍析枕林枘枚果枝枞枢枣枥枧枨枪枫枭枯枰枲枳枵架枷枸枹柁柃柄柈柊柏某柑柒染柔" + "柖柘柙柚柜柝柞柠柢查柩柬柯柰柱柳柴柷柽柿栀栅标栈栉栊栋栌栎栏栐树栒栓栖栗栝栟校栩" + "株栲栳栴样核根栻格栽栾桀桁桂桃桄桅框案桉桊桌桎桐桑桓桔桕桠桡桢档桤桥桦桧桨桩桫桯" + "桲桴桶桷桹梁梃梅梆梌梏梓梗梠梢梣梦梧梨梭梯械梳梴梵梼梽梾梿检棁棂棉棋棍棐棒棓棕棘" + "棚棠棣棤棨棪棫棬森棰棱棵棹棺棻棼棽椀椁椅椆椋植椎椐椑椒椓椟椠椤椪椭椰椴椸椹椽椿楂" + "楒楔楗楙楚楝楞楠楣楦楩楪楫楮楯楷楸楹楼概榃榄榅榆榇榈榉榍榑榔榕榖榛榜榧榨榫榭榰榱" + "榴榷榻槁槃槊槌槎槐槔槚槛槜槟槠槭槱槲槽槿樊樗樘樟模樨横樯樱樵樽樾橄橇橐橑橘橙橛橞" + "橡橥橦橱橹橼檀檄檎檐檑檗檞檠檩檫檬櫆欂欠次欢欣欤欧欲欸欹欺欻款歃歅歆歇歉歌歙止正" + "此步武歧歪歹死歼殁殂殃殄殆殇殉殊残殍殒殓殖殚殛殡殣殪殳殴段殷殿毁毂毅毋毌母每毐毒" + "毓比毕毖毗毙毛毡毪毫毯毳毵毹毽氅氆氇氍氏氐民氓气氕氖氘氙氚氛氟氡氢氤氦氧氨氩氪氮" + "氯氰氲水永氾氿汀汁求汆汇汈汉汊汋汐汔汕汗汛汜汝汞江池污汤汧汨汩汪汫汭汰汲汴汶汹汽" + "汾沁沂沃沄沅沆沇沈沉沌沏沐沓沔沘沙沚沛沟没沣沤沥沦沧沨沩沪沫沭沮沱河沸油沺治沼沽" + "沾沿泂泃泄泅泇泉泊泌泐泓泔法泖泗泙泚泛泜泞泠泡波泣泥注泪泫泮泯泰泱泳泵泷泸泺泻泼" + "泽泾洁洄洇洈洋洌洎洑洒洓洗洘洙洚洛洞洢洣津洧洨洪洫洭洮洱洲洳洴洵洸洹洺活洼洽派洿" + "流浃浅浆浇浈浉浊测浍济浏浐浑浒浓浔浕浙浚浛浜浞浟浠浡浣浥浦浩浪浬浭浮浯浰浲浴海浸" + "浼涂涄涅消涉涌涍涎涐涑涓涔涕涘涛涝涞涟涠涡涢涣涤润涧涨涩涪涫涮涯液涴涵涸涿淀淄淅" + "淆淇淋淌淏淑淖淘淙淜淝淞淟淠淡淤淦淫淬淮淯深淳淴混淹添淼清渊渌渍渎渐渑渔渗渚渝渟" + "渠渡渣渤渥温渫渭港渰渲渴游渺渼湃湄湉湍湎湑湓湔湖湘湛湜湝湟湣湫湮湲湴湾湿溁溃溅溆" + "溇溉溍溏源溘溚溜溞溟溠溢溥溦溧溪溯溱溲溴溵溶溷溹溺溻溽滁滂滃滆滇滉滋滍滏滑滓滔滕" + "滗滘滚滞滟滠满滢滤滥滦滧滨滩滪滫滴滹漂漆漈漉漋漏漓演漕漖漠漤漦漩漪漫漭漯漱漳漴漶" + "漷漹漻漼漾潆潇潋潍潏潖潘潜潞潟潢潦潩潭潮潲潴潵潸潺潼潽潾澂澄澈澉澌澍澎澛澜澡澥澧" + "澪澭澳澴澶澹澼澽激濂濉濋濑濒濞濠濡濩濮濯瀌瀍瀑瀔瀚瀛瀣瀱瀵瀹瀼灈灌灏灞火灭灯灰灵" + "灶灸灼灾灿炀炅炆炉炊炌炎炒炔炕炖炘炙炜炝炟炣炫炬炭炮炯炱炳炷炸点炻炼炽烀烁烂烃烈" + "烊烔烘烙烛烜烝烟烠烤烦烧烨烩烫烬热烯烶烷烹烺烻烽焆焉焊焌焐焓焕焖焗焘焙焚焜焞焦焯" + "焰焱然煁煃煅煊煋煌煎煓煜煞煟煤煦照煨煮煲煳煴煸煺煽熄熇熊熏熔熘熙熛熜熟熠熥熨熬熵" + "熹熻燃燊燋燎燏燔燕燚燠燥燧燮燹爆爇爔爚爝爟爨爪爬爰爱爵父爷爸爹爻爽爿牁牂片版牌牍" + "牒牖牙牚牛牝牟牡牢牤牥牦牧物牮牯牲牵特牺牻牾牿犀犁犄犇犊犋犍犏犒犟犨犬犯犰犴状犷" + "犸犹狁狂狃狄狈狉狍狎狐狒狗狙狝狞狠狡狨狩独狭狮狯狰狱狲狳狴狷狸狺狻狼猁猃猄猇猊猎" + "猕猖猗猛猜猝猞猡猢猥猩猪猫猬献猯猰猱猴猷猹猺猾猿獍獐獒獗獠獬獭獯獴獾玃玄率玉王玎" + "玑玒玓玕玖玘玙玚玛玞玟玠玡玢玤玥玦玩玫玭玮环现玱玲玳玶玷玹玺玻玼玿珀珂珅珇珈珉珊" + "珋珌珍珏珐珑珒珕珖珙珛珝珞珠珢珣珥珦珧珩珪珫班珰珲珵珷珸珹珺珽琀球琄琅理琇琈琉琊" + "琎琏琐琔琚琛琟琡琢琤琥琦琨琪琫琬琭琮琯琰琲琳琴琵琶琼瑀瑁瑂瑃瑄瑅瑆瑑瑓瑔瑕瑖瑗瑙" + "瑚瑛瑜瑝瑞瑟瑢瑧瑨瑬瑭瑰瑱瑳瑶瑷瑾璀璁璃璆璇璈璋璎璐璒璘璜璞璟璠璥璧璨璩璪璬璮璱" + "璲璺瓀瓒瓖瓘瓜瓞瓠瓢瓣瓤瓦瓮瓯瓴瓶瓷瓻瓿甄甍甏甑甓甗甘甚甜生甡甥甦用甩甪甫甬甭甯" + "田由甲申电男甸町画甾畀畅畈畋界畎畏畔畖留畚畛畜畤略畦番畬畯畲畴畸畹畿疁疃疆疍疏疐" + "疑疔疖疗疙疚疝疟疠疡疢疣疤疥疫疬疭疮疯疰疱疲疳疴疵疸疹疼疽疾痂痃痄病症痈痉痊痍痒" + "痓痔痕痘痛痞痢痣痤痦痧痨痪痫痰痱痴痹痼痿瘀瘁瘃瘅瘆瘊瘌瘐瘕瘗瘘瘙瘛瘟瘠瘢瘤瘥瘦瘩" + "瘪瘫瘭瘰瘳瘴瘵瘸瘼瘾瘿癀癃癌癍癔癖癗癜癞癣癫癯癸登白百癿皂的皆皇皈皋皎皑皓皕皖皙" + "皛皞皤皦皭皮皱皲皴皿盂盅盆盈盉益盍盎盏盐监盒盔盖盗盘盛盟盥盦目盯盱盲直盷相盹盼盾" + "省眄眇眈眉眊看眍眙眚真眠眢眦眨眩眬眭眯眵眶眷眸眺眼着睁睃睄睇睎睐睑睚睛睡睢督睥睦" + "睨睫睬睹睽睾睿瞀瞄瞅瞋瞌瞍瞎瞑瞒瞟瞠瞢瞥瞧瞩瞪瞫瞬瞭瞰瞳瞵瞻瞽瞿矍矗矛矜矞矢矣知" + "矧矩矫矬短矮矰石矶矸矻矼矾矿砀码砂砄砆砉砌砍砑砒研砖砗砘砚砜砝砟砠砣砥砧砫砬砭砮" + "砰破砵砷砸砹砺砻砼砾础硁硅硇硊硌硍硎硐硒硔硕硖硗硙硚硝硪硫硬硭确硼硿碃碇碈碉碌碍" + "碎碏碑碓碗碘碚碛碜碟碡碣碥碧碨碰碱碲碳碴碶碹碾磁磅磉磊磋磏磐磔磕磙磜磡磨磬磲磴磷" + "磹磻礁礅礌礓礞礴礵示礼社祀祁祃祆祇祈祉祊祋祎祏祐祓祕祖祗祚祛祜祝神祟祠祢祥祧票祭" + "祯祲祷祸祺祼祾禀禁禄禅禊禋福禒禔禘禚禛禤禧禳禹禺离禽禾秀私秃秆秉秋种科秒秕秘租秣" + "秤秦秧秩秫秬秭积称秸移秽秾稀稂稃稆程稌稍税稑稔稗稙稚稞稠稣稳稷稹稻稼稽稿穄穆穑穗" + "穙穜穟穰穴究穷穸穹空穿窀突窃窄窅窈窊窍窎窑窒窕窖窗窘窜窝窟窠窣窥窦窨窬窭窳窸窿立" + "竑竖竘站竞竟章竣童竦竫竭端竹竺竽竿笃笄笆笈笊笋笏笑笔笕笙笛笞笠笤笥符笨笪笫第笮笯" + "笱笳笸笺笼笾筀筅筇等筋筌筏筐筑筒答策筘筚筛筜筝筠筢筤筥筦筮筱筲筵筶筷筹筻筼签简箅" + "箍箐箓箔箕箖算箜管箢箦箧箨箩箪箫箬箭箱箴箸篁篆篇篌篑篓篙篚篝篡篥篦篪篮篯篱篷篼篾" + "簃簇簉簋簌簏簕簖簝簟簠簧簪簰簸簿籀籁籍籥米籴类籼籽粉粑粒粕粗粘粜粝粞粟粢粤粥粪粮" + "粱粲粳粹粼粽精粿糁糅糇糈糊糌糍糒糕糖糗糙糜糟糠糨糯糵系紊素索紧紫累絜絮絷綦綮縠縢" + "縻繁繄繇纂纛纠纡红纣纤纥约级纨纩纪纫纬纭纮纯纰纱纲纳纴纵纶纷纸纹纺纻纼纽纾线绀绁" + "绂练组绅细织终绉绊绋绌绍绎经绐绑绒结绔绕绖绗绘给绚绛络绝绞统绠绡绢绣绤绥绦继绨绩" + "绪绫续绮绯绰绱绲绳维绵绶绷绸绹绺绻综绽绾绿缀缁缂缃缄缅缆缇缈缉缊缌缎缐缑缒缓缔缕" + "编缗缘缙缚缛缜缝缞缟缠缡缢缣缤缥缦缧缨缩缪缫缬缭缮缯缰缱缲缳缴缵缶缸缺罂罄罅罍罐" + "网罔罕罗罘罚罟罡罢罨罩罪置罱署罴罶罹罽罾羁羊羌美羑羓羔羕羖羚羝羞羟羡群羧羯羰羱羲" + "羸羹羼羽羿翀翁翂翃翅翈翊翌翎翔翕翘翙翚翛翟翠翡翥翦翩翮翯翰翱翳翷翻翼翾耀老考耄者" + "耆耇耋而耍耏耐耑耒耔耕耖耗耘耙耜耠耢耤耥耦耧耨耩耪耰耱耳耵耶耷耸耻耽耿聂聃聆聊聋" + "职聍聒联聘聚聩聪聱聿肃肄肆肇肉肋肌肓肖肘肚肛肝肟肠股肢肤肥肩肪肫肭肮肯肱育肴肷肸" + "肺肼肽肾肿胀胁胂胃胄胆胈背胍胎胖胗胙胚胛胜胝胞胠胡胣胤胥胧胨胩胪胫胬胭胯胰胱胲胳" + "胴胶胸胺胼能脂脆脉脊脍脎脏脐脑脒脓脔脖脘脚脞脟脩脬脯脱脲脶脸脾脿腆腈腊腋腌腐腑腒" + "腓腔腕腘腙腚腠腥腧腨腩腭腮腯腰腱腴腹腺腻腼腽腾腿膀膂膈膊膏膑膘膙膛膜膝膦膨膳膺膻" + "臀臂臃臆臊臌臑臜臣臧自臬臭至致臻臼臾舀舁舂舄舅舆舌舍舐舒舔舛舜舞舟舠舢舣舥航舫般" + "舭舯舰舱舲舳舴舵舶舷舸船舻舾艄艅艇艉艋艎艏艘艚艟艨艮良艰色艳艴艺艽艾艿节芃芄芈芊" + "芋芍芎芏芑芒芗芘芙芜芝芟芠芡芣芤芥芦芨芩芪芫芬芭芮芯芰花芳芴芷芸芹芼芽芾苁苄苇苈" + "苉苊苋苌苍苎苏苑苒苓苔苕苗苘苛苜苞苟苠苡苣苤若苦苧苫苯英苴苷苹苻苾茀茁茂范茄茅茆" + "茈茉茋茌茎茏茑茓茔茕茗茚茛茜茝茧茨茫茬茭茯茱茳茴茵茶茸茹茺茼茽荀荁荃荄荆荇草荏荐" + "荑荒荓荔荖荙荚荛荜荞荟荠荡荣荤荥荦荧荨荩荪荫荬荭荮药荷荸荻荼荽莅莆莉莎莒莓莘莙莛" + "莜莝莞莠莨莩莪莫莰莱莲莳莴莶获莸莹莺莼莽莿菀菁菂菅菇菉菊菌菍菏菔菖菘菜菝菟菠菡菥" + "菩菪菰菱菲菹菼菽萁萃萄萆萋萌萍萎萏萑萘萚萜萝萣萤营萦萧萨萩萱萳萸萹萼落葆葎葑葖著" + "葙葚葛葜葡董葩葫葬葭葰葱葳葴葵葶葸葺蒂蒄蒇蒈蒉蒋蒌蒎蒐蒗蒙蒜蒟蒡蒨蒯蒱蒲蒴蒸蒹蒺" + "蒻蒽蒿蓁蓂蓄蓇蓉蓊蓍蓏蓐蓑蓓蓖蓝蓟蓠蓢蓣蓥蓦蓬蓰蓼蓿蔀蔃蔈蔊蔌蔑蔓蔗蔚蔟蔡蔫蔬蔷" + "蔸蔹蔺蔻蔼蔽蕃蕈蕉蕊蕖蕗蕙蕞蕤蕨蕰蕲蕴蕹蕺蕻蕾薁薄薅薇薏薛薜薢薤薨薪薮薯薰薳薷薸" + "薹薿藁藉藏藐藓藕藜藟藠藤藦藨藩藻藿蘅蘑蘖蘘蘧蘩蘸蘼虎虏虐虑虒虓虔虚虞虢虤虫虬虮虱" + "虷虸虹虺虻虼虽虾虿蚀蚁蚂蚄蚆蚊蚋蚌蚍蚓蚕蚜蚝蚣蚤蚧蚨蚩蚪蚬蚯蚰蚱蚲蚴蚶蚺蛀蛃蛄蛆" + "蛇蛉蛊蛋蛎蛏蛐蛑蛔蛘蛙蛛蛞蛟蛤蛩蛭蛮蛰蛱蛲蛳蛴蛸蛹蛾蜀蜂蜃蜇蜈蜉蜊蜍蜎蜐蜒蜓蜕蜗" + "蜘蜚蜜蜞蜡蜢蜣蜥蜩蜮蜱蜴蜷蜻蜾蜿蝇蝈蝉蝌蝎蝓蝗蝘蝙蝠蝣蝤蝥蝮蝰蝲蝴蝶蝻蝼蝽蝾螂螃" + "螅螈螋融螗螟螠螣螨螫螬螭螯螱螳螵螺螽蟀蟆蟊蟋蟏蟑蟒蟛蟠蟥蟪蟫蟮蟹蟾蠃蠊蠋蠓蠕蠖蠡" + "蠢蠲蠹蠼血衃衄衅行衍衎衒衔街衙衠衡衢衣补表衩衫衬衮衰衲衷衽衾衿袁袂袄袅袆袈袋袍袒" + "袖袗袜袢袤袪被袭袯袱袷袼裁裂装裆裈裉裎裒裔裕裘裙裛裟裢裣裤裥裨裰裱裳裴裸裹裼裾褂" + "褊褐褒褓褕褙褚褛褟褡褥褪褫褯褰褴褶襁襄襕襚襜襞襟襦襫襻西要覃覆见观觃规觅视觇览觉" + "觊觋觌觎觏觐觑角觖觚觜觞觟解觥触觫觭觯觱觳觿言訄訇訚訾詈詟詹誉誊誓謇警譬计订讣认" + "讥讦讧讨让讪讫训议讯记讱讲讳讴讵讶讷许讹论讻讼讽设访诀证诂诃评诅识诇诈诉诊诋诌词" + "诎诏诐译诒诓诔试诖诗诘诙诚诛诜话诞诟诠诡询诣诤该详诧诨诩诫诬语诮误诰诱诲诳说诵请" + "诸诹诺读诼诽课诿谀谁谂调谄谅谆谇谈谊谋谌谍谎谏谐谑谒谓谔谕谖谗谙谚谛谜谝谞谟谠谡" + "谢谣谤谥谦谧谨谩谪谫谬谭谮谯谰谱谲谳谴谵谶谷谼谿豁豆豇豉豌豕豚象豢豨豪豫豮豳豸豹" + "豺貂貅貆貉貊貌貔貘贝贞负贡财责贤败账货质贩贪贫贬购贮贯贰贱贲贳贴贵贶贷贸费贺贻贼" + "贽贾贿赀赁赂赃资赅赆赇赈赉赊赋赌赍赎赏赐赑赒赓赔赕赖赗赘赙赚赛赜赝赞赟赠赡赢赣赤" + "赦赧赪赫赭走赳赴赵赶起趁趄超越趋趑趔趟趣趯趱足趴趵趸趺趼趾趿跂跃跄跆跋跌跎跏跐跑" + "跖跗跚跛距跞跟跣跤跨跪跬路跱跳践跶跷跸跹跺跻跽踅踉踊踌踏踒踔踝踞踟踢踣踦踩踪踬踮" + "踯踱踵踶踹踺踽蹀蹁蹂蹄蹅蹇蹈蹉蹊蹋蹐蹑蹒蹙蹚蹜蹢蹦蹩蹬蹭蹯蹰蹲蹴蹶蹼蹽蹾蹿躁躅躇" + "躏躐躔躜躞身躬躯躲躺车轧轨轩轪轫转轭轮软轰轱轲轳轴轵轶轷轸轹轺轻轼载轾轿辀辁辂较" + "辄辅辆辇辈辉辊辋辌辍辎辏辐辑辒输辔辕辖辗辘辙辚辛辜辞辟辣辨辩辫辰辱边辽达辿迁迂迄" + "迅过迈迎运近迓返迕还这进远违连迟迢迤迥迦迨迩迪迫迭迮述迳迷迸迹迺追退送适逃逄逅逆" + "选逊逋逍透逐逑递途逖逗通逛逝逞速造逡逢逦逭逮逯逴逵逶逸逻逼逾遁遂遄遆遇遍遏遐遑遒" + "道遗遘遛遢遣遥遨遭遮遴遵遹遽避邀邂邃邈邋邑邓邕邗邘邙邛邝邠邡邢那邦邨邪邬邮邯邰邱" + "邲邳邴邵邶邸邹邺邻邽邾邿郁郃郄郅郇郈郊郎郏郐郑郓郗郚郛郜郝郡郢郤郦郧部郪郫郭郯郴" + "郸都郾郿鄀鄂鄃鄄鄅鄌鄑鄗鄘鄙鄚鄜鄞鄠鄢鄣鄫鄯鄱鄹酂酃酅酆酉酊酋酌配酎酏酐酒酗酚酝" + "酞酡酢酣酤酥酦酩酪酬酮酯酰酱酲酴酵酶酷酸酹酺酽酾酿醅醇醉醋醌醍醐醑醒醚醛醢醨醪醭" + "醮醯醴醵醺醾采釉释里重野量釐金釜鉴銎銮鋆鋈錾鍪鎏鏊鏖鐾鑫钆钇针钉钊钋钌钍钎钏钐钒" + "钓钔钕钖钗钘钙钚钛钜钝钞钟钠钡钢钣钤钥钦钧钨钩钪钫钬钭钮钯钰钱钲钳钴钵钷钹钺钻钼" + "钽钾钿铀铁铂铃铄铅铆铈铉铊铋铌铍铎铏铐铑铒铕铖铗铘铙铚铛铜铝铞铟铠铡铢铣铤铥铧铨" + "铩铪铫铬铭铮铯铰铱铲铳铴铵银铷铸铹铺铻铼铽链铿销锁锂锃锄锅锆锇锈锉锊锋锌锍锎锏锐" + "锑锒锓锔锕锖锗锘错锚锛锜锝锞锟锡锢锣锤锥锦锧锨锩锪锫锬锭键锯锰锱锲锳锴锵锶锷锸锹" + "锺锻锼锽锾锿镀镁镂镃镄镅镆镇镈镉镊镋镌镍镎镏镐镑镒镓镔镕镖镗镘镚镛镜镝镞镠镡镢镣" + "镤镥镦镧镨镩镪镫镬镭镮镯镰镱镲镳镴镵镶长门闩闪闫闭问闯闰闱闲闳间闵闶闷闸闹闺闻闼" + "闽闾闿阀阁阂阃阄阅阆阇阈阉阊阋阌阍阎阏阐阑阒阔阕阖阗阘阙阚阜队阡阪阮阱防阳阴阵阶" + "阻阼阽阿陀陂附际陆陇陈陉陋陌降陎限陑陔陕陛陞陟陡院除陧陨险陪陬陲陴陵陶陷隃隅隆隈" + "隋隍随隐隔隗隘隙障隧隩隰隳隶隹隺隼隽难雀雁雄雅集雇雉雊雌雍雎雏雒雕雠雨雩雪雯雱雳" + "零雷雹雾需霁霄霅霆震霈霉霍霎霏霓霖霜霞霨霪霭霰露霸霹霾青靓靖静靛非靠靡面靥革靬靰" + "靳靴靶靸靺靼靽靿鞁鞅鞋鞍鞑鞒鞔鞘鞠鞡鞣鞧鞨鞫鞬鞭鞮鞯鞲鞳鞴韂韦韧韨韩韪韫韬韭音韵" + "韶页顶顷顸项顺须顼顽顾顿颀颁颂颃预颅领颇颈颉颊颋颌颍颎颏颐频颓颔颖颗题颙颚颛颜额" + "颞颟颠颡颢颤颥颦颧风飏飐飑飒飓飔飕飗飘飙飞食飧飨餍餐餮饔饕饥饧饨饩饪饫饬饭饮饯饰" + "饱饲饳饴饵饶饷饸饹饺饻饼饽饿馁馃馄馅馆馇馈馉馊馋馌馍馏馐馑馒馓馔馕首馗馘香馝馞馥" + "馧馨马驭驮驯驰驱驲驳驴驵驶驷驸驹驺驻驼驽驾驿骀骁骂骃骄骅骆骇骈骉骊骋验骍骎骏骐骑" + "骒骓骕骖骗骘骙骚骛骜骝骞骟骠骡骢骣骤骥骦骧骨骰骱骶骷骸骺骼髀髁髂髃髅髋髌髎髑髓高" + "髡髢髦髫髭髯髹髻髽鬃鬈鬏鬒鬓鬘鬟鬣鬯鬲鬶鬷鬻鬼魁魂魃魄魅魆魇魈魉魋魍魏魑魔鱼鱽鱾" + "鱿鲀鲁鲂鲃鲅鲆鲇鲈鲉鲊鲋鲌鲍鲎鲏鲐鲑鲒鲔鲕鲖鲗鲘鲙鲚鲛鲜鲝鲞鲟鲠鲡鲢鲣鲤鲥鲦鲧鲨" + "鲩鲪鲫鲬鲭鲮鲯鲰鲱鲲鲳鲴鲵鲷鲸鲹鲺鲻鲼鲽鲾鲿鳀鳁鳂鳃鳄鳅鳇鳈鳉鳊鳌鳍鳎鳏鳐鳑鳒鳓" + "鳔鳕鳖鳗鳘鳙鳚鳛鳜鳝鳞鳟鳠鳡鳢鳣鳤鸟鸠鸡鸢鸣鸤鸥鸦鸧鸨鸩鸪鸫鸬鸭鸮鸯鸰鸱鸲鸳鸵鸶" + "鸷鸸鸹鸺鸻鸼鸽鸾鸿鹀鹁鹂鹃鹄鹅鹆鹇鹈鹉鹊鹋鹌鹍鹎鹏鹐鹑鹒鹔鹕鹖鹗鹘鹙鹚鹛鹜鹝鹞鹟" + "鹠鹡鹢鹣鹤鹦鹧鹨鹩鹪鹫鹬鹭鹮鹯鹰鹱鹲鹳鹴鹾鹿麀麂麇麈麋麑麒麓麖麝麟麦麸麹麻麽麾黄" + "黇黉黍黎黏黑黔默黛黜黝黟黠黡黢黥黧黩黪黯黹黻黼黾鼋鼍鼎鼐鼒鼓鼗鼙鼠鼢鼩鼫鼬鼯鼱鼷" + "鼹鼻鼽鼾齁齇齉齐齑齿龀龁龂龃龄龅龆龇龈龉龊龋龌龙龚龛龟龠龢鿍鿎鿏㑇㑊㕮㘎㙍㙘㙦㛃" + "㛚㛹㟃㠇㠓㤘㥄㧐㧑㧟㫰㬊㬎㬚㭎㭕㮾㰀㳇㳘㳚㴔㵐㶲㸆㸌㺄㻬㽏㿠䁖䂮䃅䃎䅟䌹䎃䎖䏝䏡" + "䏲䐃䓖䓛䓨䓫䓬䗖䗛䗪䗴䜣䝙䢺䢼䣘䥽䦃䲟䲠䲢䴓䴔䴕䴖䴗䴘䴙䶮𠅤𠙶𠳐𡎚𡐓𣗋𣲗𣲘𣸣𤧛𤩽" + "𤫉𥔲𥕢𥖨𥻗𦈡𦒍𦙶𦝼𦭜𦰡𧿹𨐈𨙸𨚕𨟠𨭉𨱇𨱏𨱑𨱔𨺙𩽾𩾃𩾌𪟝𪣻𪤗𪨰𪨶𪩘𪾢𫄧𫄨𫄷𫄸𫇭𫌀𫍣𫍯" + "𫍲𫍽𫐄𫐐𫐓𫑡𫓧𫓯𫓶𫓹𫔍𫔎𫔶𫖮𫖯𫖳𫗧𫗴𫘜𫘝𫘦𫘧𫘨𫘪𫘬𫚕𫚖𫚭𫛭𫞩𫟅𫟦𫟹𫟼𫠆𫠊𫠜𫢸𫫇𫭟" + "𫭢𫭼𫮃𫰛𫵷𫶇𫷷𫸩𬀩𬀪𬂩𬃊𬇕𬇙𬇹𬉼𬊈𬊤𬌗𬍛𬍡𬍤𬒈𬒔𬒗𬕂𬘓𬘘𬘡𬘩𬘫𬘬𬘭𬘯𬙂𬙊𬙋𬜬𬜯𬞟" + "𬟁𬟽𬣙𬣞𬣡𬣳𬤇𬤊𬤝𬨂𬨎𬩽𬪩𬬩𬬭𬬮𬬱𬬸𬬹𬬻𬬿𬭁𬭊𬭎𬭚𬭛𬭤𬭩𬭬𬭯𬭳𬭶𬭸𬭼𬮱𬮿𬯀𬯎𬱖𬱟" + "𬳵𬳶𬳽𬳿𬴂𬴃𬴊𬶋𬶍𬶏𬶐𬶟𬶠𬶨𬶭𬶮𬷕𬸘𬸚𬸣𬸦𬸪𬹼𬺈𬺓" +) +CN_CHARS_EXT = "吶诶屌囧飚屄" + +CN_CHARS = CN_CHARS_COMMON + CN_CHARS_EXT +IN_CH_CHARS = {c: True for c in CN_CHARS} + +EN_CHARS = string.ascii_letters + string.digits +IN_EN_CHARS = {c: True for c in EN_CHARS} + +VALID_CHARS = CN_CHARS + EN_CHARS + " " +IN_VALID_CHARS = {c: True for c in VALID_CHARS} + + +# ================================================================================ # +# basic class +# ================================================================================ # +class ChineseChar(object): + """ + 中文字符 + 每个字符对应简体和繁体, + e.g. 简体 = '负', 繁体 = '負' + 转换时可转换为简体或繁体 + """ + + def __init__(self, simplified, traditional): + self.simplified = simplified + self.traditional = traditional + # self.__repr__ = self.__str__ + + def __str__(self): + return self.simplified or self.traditional or None + + def __repr__(self): + return self.__str__() + + +class ChineseNumberUnit(ChineseChar): + """ + 中文数字/数位字符 + 每个字符除繁简体外还有一个额外的大写字符 + e.g. '陆' 和 '陸' + """ + + def __init__(self, power, simplified, traditional, big_s, big_t): + super(ChineseNumberUnit, self).__init__(simplified, traditional) + self.power = power + self.big_s = big_s + self.big_t = big_t + + def __str__(self): + return "10^{}".format(self.power) + + @classmethod + def create(cls, index, value, numbering_type=NUMBERING_TYPES[1], small_unit=False): + + if small_unit: + return ChineseNumberUnit( + power=index + 1, + simplified=value[0], + traditional=value[1], + big_s=value[1], + big_t=value[1], + ) + elif numbering_type == NUMBERING_TYPES[0]: + return ChineseNumberUnit( + power=index + 8, + simplified=value[0], + traditional=value[1], + big_s=value[0], + big_t=value[1], + ) + elif numbering_type == NUMBERING_TYPES[1]: + return ChineseNumberUnit( + power=(index + 2) * 4, + simplified=value[0], + traditional=value[1], + big_s=value[0], + big_t=value[1], + ) + elif numbering_type == NUMBERING_TYPES[2]: + return ChineseNumberUnit( + power=pow(2, index + 3), + simplified=value[0], + traditional=value[1], + big_s=value[0], + big_t=value[1], + ) + else: + raise ValueError( + "Counting type should be in {0} ({1} provided).".format( + NUMBERING_TYPES, numbering_type + ) + ) + + +class ChineseNumberDigit(ChineseChar): + """ + 中文数字字符 + """ + + def __init__(self, value, simplified, traditional, big_s, big_t, alt_s=None, alt_t=None): + super(ChineseNumberDigit, self).__init__(simplified, traditional) + self.value = value + self.big_s = big_s + self.big_t = big_t + self.alt_s = alt_s + self.alt_t = alt_t + + def __str__(self): + return str(self.value) + + @classmethod + def create(cls, i, v): + return ChineseNumberDigit(i, v[0], v[1], v[2], v[3]) + + +class ChineseMath(ChineseChar): + """ + 中文数位字符 + """ + + def __init__(self, simplified, traditional, symbol, expression=None): + super(ChineseMath, self).__init__(simplified, traditional) + self.symbol = symbol + self.expression = expression + self.big_s = simplified + self.big_t = traditional + + +CC, CNU, CND, CM = ChineseChar, ChineseNumberUnit, ChineseNumberDigit, ChineseMath + + +class NumberSystem(object): + """ + 中文数字系统 + """ + + pass + + +class MathSymbol(object): + """ + 用于中文数字系统的数学符号 (繁/简体), e.g. + positive = ['正', '正'] + negative = ['负', '負'] + point = ['点', '點'] + """ + + def __init__(self, positive, negative, point): + self.positive = positive + self.negative = negative + self.point = point + + def __iter__(self): + for v in self.__dict__.values(): + yield v + + +# class OtherSymbol(object): +# """ +# 其他符号 +# """ +# +# def __init__(self, sil): +# self.sil = sil +# +# def __iter__(self): +# for v in self.__dict__.values(): +# yield v + + +# ================================================================================ # +# basic utils +# ================================================================================ # +def create_system(numbering_type=NUMBERING_TYPES[1]): + """ + 根据数字系统类型返回创建相应的数字系统,默认为 mid + NUMBERING_TYPES = ['low', 'mid', 'high']: 中文数字系统类型 + low: '兆' = '亿' * '十' = $10^{9}$, '京' = '兆' * '十', etc. + mid: '兆' = '亿' * '万' = $10^{12}$, '京' = '兆' * '万', etc. + high: '兆' = '亿' * '亿' = $10^{16}$, '京' = '兆' * '兆', etc. + 返回对应的数字系统 + """ + + # chinese number units of '亿' and larger + all_larger_units = zip( + LARGER_CHINESE_NUMERING_UNITS_SIMPLIFIED, LARGER_CHINESE_NUMERING_UNITS_TRADITIONAL + ) + larger_units = [CNU.create(i, v, numbering_type, False) for i, v in enumerate(all_larger_units)] + # chinese number units of '十, 百, 千, 万' + all_smaller_units = zip( + SMALLER_CHINESE_NUMERING_UNITS_SIMPLIFIED, SMALLER_CHINESE_NUMERING_UNITS_TRADITIONAL + ) + smaller_units = [CNU.create(i, v, small_unit=True) for i, v in enumerate(all_smaller_units)] + # digis + chinese_digis = zip( + CHINESE_DIGIS, CHINESE_DIGIS, BIG_CHINESE_DIGIS_SIMPLIFIED, BIG_CHINESE_DIGIS_TRADITIONAL + ) + digits = [CND.create(i, v) for i, v in enumerate(chinese_digis)] + digits[0].alt_s, digits[0].alt_t = ZERO_ALT, ZERO_ALT + digits[1].alt_s, digits[1].alt_t = ONE_ALT, ONE_ALT + digits[2].alt_s, digits[2].alt_t = TWO_ALTS[0], TWO_ALTS[1] + + # symbols + positive_cn = CM(POSITIVE[0], POSITIVE[1], "+", lambda x: x) + negative_cn = CM(NEGATIVE[0], NEGATIVE[1], "-", lambda x: -x) + point_cn = CM(POINT[0], POINT[1], ".", lambda x, y: float(str(x) + "." + str(y))) + # sil_cn = CM(SIL[0], SIL[1], '-', lambda x, y: float(str(x) + '-' + str(y))) + system = NumberSystem() + system.units = smaller_units + larger_units + system.digits = digits + system.math = MathSymbol(positive_cn, negative_cn, point_cn) + # system.symbols = OtherSymbol(sil_cn) + return system + + +def chn2num(chinese_string, numbering_type=NUMBERING_TYPES[1]): + + def get_symbol(char, system): + for u in system.units: + if char in [u.traditional, u.simplified, u.big_s, u.big_t]: + return u + for d in system.digits: + if char in [d.traditional, d.simplified, d.big_s, d.big_t, d.alt_s, d.alt_t]: + return d + for m in system.math: + if char in [m.traditional, m.simplified]: + return m + + def string2symbols(chinese_string, system): + int_string, dec_string = chinese_string, "" + for p in [system.math.point.simplified, system.math.point.traditional]: + if p in chinese_string: + int_string, dec_string = chinese_string.split(p) + break + return [get_symbol(c, system) for c in int_string], [ + get_symbol(c, system) for c in dec_string + ] + + def correct_symbols(integer_symbols, system): + """ + 一百八 to 一百八十 + 一亿一千三百万 to 一亿 一千万 三百万 + """ + + if integer_symbols and isinstance(integer_symbols[0], CNU): + if integer_symbols[0].power == 1: + integer_symbols = [system.digits[1]] + integer_symbols + + if len(integer_symbols) > 1: + if isinstance(integer_symbols[-1], CND) and isinstance(integer_symbols[-2], CNU): + integer_symbols.append(CNU(integer_symbols[-2].power - 1, None, None, None, None)) + + result = [] + unit_count = 0 + for s in integer_symbols: + if isinstance(s, CND): + result.append(s) + unit_count = 0 + elif isinstance(s, CNU): + current_unit = CNU(s.power, None, None, None, None) + unit_count += 1 + + if unit_count == 1: + result.append(current_unit) + elif unit_count > 1: + for i in range(len(result)): + if ( + isinstance(result[-i - 1], CNU) + and result[-i - 1].power < current_unit.power + ): + result[-i - 1] = CNU( + result[-i - 1].power + current_unit.power, None, None, None, None + ) + return result + + def compute_value(integer_symbols): + """ + Compute the value. + When current unit is larger than previous unit, current unit * all previous units will be used as all previous units. + e.g. '两千万' = 2000 * 10000 not 2000 + 10000 + """ + value = [0] + last_power = 0 + for s in integer_symbols: + if isinstance(s, CND): + value[-1] = s.value + elif isinstance(s, CNU): + value[-1] *= pow(10, s.power) + if s.power > last_power: + value[:-1] = list(map(lambda v: v * pow(10, s.power), value[:-1])) + last_power = s.power + value.append(0) + return sum(value) + + system = create_system(numbering_type) + int_part, dec_part = string2symbols(chinese_string, system) + int_part = correct_symbols(int_part, system) + int_str = str(compute_value(int_part)) + dec_str = "".join([str(d.value) for d in dec_part]) + if dec_part: + return "{0}.{1}".format(int_str, dec_str) + else: + return int_str + + +def num2chn( + number_string, + numbering_type=NUMBERING_TYPES[1], + big=False, + traditional=False, + alt_zero=False, + alt_one=False, + alt_two=True, + use_zeros=True, + use_units=True, +): + + def get_value(value_string, use_zeros=True): + + striped_string = value_string.lstrip("0") + + # record nothing if all zeros + if not striped_string: + return [] + + # record one digits + elif len(striped_string) == 1: + if use_zeros and len(value_string) != len(striped_string): + return [system.digits[0], system.digits[int(striped_string)]] + else: + return [system.digits[int(striped_string)]] + + # recursively record multiple digits + else: + result_unit = next(u for u in reversed(system.units) if u.power < len(striped_string)) + result_string = value_string[: -result_unit.power] + return ( + get_value(result_string) + + [result_unit] + + get_value(striped_string[-result_unit.power :]) + ) + + system = create_system(numbering_type) + + int_dec = number_string.split(".") + if len(int_dec) == 1: + int_string = int_dec[0] + dec_string = "" + elif len(int_dec) == 2: + int_string = int_dec[0] + dec_string = int_dec[1] + else: + raise ValueError( + "invalid input num string with more than one dot: {}".format(number_string) + ) + + if use_units and len(int_string) > 1: + result_symbols = get_value(int_string) + else: + result_symbols = [system.digits[int(c)] for c in int_string] + dec_symbols = [system.digits[int(c)] for c in dec_string] + if dec_string: + result_symbols += [system.math.point] + dec_symbols + + if alt_two: + liang = CND( + 2, + system.digits[2].alt_s, + system.digits[2].alt_t, + system.digits[2].big_s, + system.digits[2].big_t, + ) + for i, v in enumerate(result_symbols): + if isinstance(v, CND) and v.value == 2: + next_symbol = result_symbols[i + 1] if i < len(result_symbols) - 1 else None + previous_symbol = result_symbols[i - 1] if i > 0 else None + if isinstance(next_symbol, CNU) and isinstance(previous_symbol, (CNU, type(None))): + if next_symbol.power != 1 and ( + (previous_symbol is None) or (previous_symbol.power != 1) + ): + result_symbols[i] = liang + + # if big is True, '两' will not be used and `alt_two` has no impact on output + if big: + attr_name = "big_" + if traditional: + attr_name += "t" + else: + attr_name += "s" + else: + if traditional: + attr_name = "traditional" + else: + attr_name = "simplified" + + result = "".join([getattr(s, attr_name) for s in result_symbols]) + + # if not use_zeros: + # result = result.strip(getattr(system.digits[0], attr_name)) + + if alt_zero: + result = result.replace(getattr(system.digits[0], attr_name), system.digits[0].alt_s) + + if alt_one: + result = result.replace(getattr(system.digits[1], attr_name), system.digits[1].alt_s) + + for i, p in enumerate(POINT): + if result.startswith(p): + return CHINESE_DIGIS[0] + result + + # ^10, 11, .., 19 + if ( + len(result) >= 2 + and result[1] + in [ + SMALLER_CHINESE_NUMERING_UNITS_SIMPLIFIED[0], + SMALLER_CHINESE_NUMERING_UNITS_TRADITIONAL[0], + ] + and result[0] + in [CHINESE_DIGIS[1], BIG_CHINESE_DIGIS_SIMPLIFIED[1], BIG_CHINESE_DIGIS_TRADITIONAL[1]] + ): + result = result[1:] + + return result + + +# ================================================================================ # +# different types of rewriters +# ================================================================================ # +class Cardinal: + """ + CARDINAL类 + """ + + def __init__(self, cardinal=None, chntext=None): + self.cardinal = cardinal + self.chntext = chntext + + def chntext2cardinal(self): + return chn2num(self.chntext) + + def cardinal2chntext(self): + return num2chn(self.cardinal) + + +class Digit: + """ + DIGIT类 + """ + + def __init__(self, digit=None, chntext=None): + self.digit = digit + self.chntext = chntext + + # def chntext2digit(self): + # return chn2num(self.chntext) + + def digit2chntext(self): + return num2chn(self.digit, alt_two=False, use_units=False) + + +class TelePhone: + """ + TELEPHONE类 + """ + + def __init__(self, telephone=None, raw_chntext=None, chntext=None): + self.telephone = telephone + self.raw_chntext = raw_chntext + self.chntext = chntext + + # def chntext2telephone(self): + # sil_parts = self.raw_chntext.split('') + # self.telephone = '-'.join([ + # str(chn2num(p)) for p in sil_parts + # ]) + # return self.telephone + + def telephone2chntext(self, fixed=False): + + if fixed: + sil_parts = self.telephone.split("-") + self.raw_chntext = "".join( + [num2chn(part, alt_two=False, use_units=False) for part in sil_parts] + ) + self.chntext = self.raw_chntext.replace("", "") + else: + sp_parts = self.telephone.strip("+").split() + self.raw_chntext = "".join( + [num2chn(part, alt_two=False, use_units=False) for part in sp_parts] + ) + self.chntext = self.raw_chntext.replace("", "") + return self.chntext + + +class Fraction: + """ + FRACTION类 + """ + + def __init__(self, fraction=None, chntext=None): + self.fraction = fraction + self.chntext = chntext + + def chntext2fraction(self): + denominator, numerator = self.chntext.split("分之") + return chn2num(numerator) + "/" + chn2num(denominator) + + def fraction2chntext(self): + numerator, denominator = self.fraction.split("/") + return num2chn(denominator) + "分之" + num2chn(numerator) + + +class Date: + """ + DATE类 + """ + + def __init__(self, date=None, chntext=None): + self.date = date + self.chntext = chntext + + # def chntext2date(self): + # chntext = self.chntext + # try: + # year, other = chntext.strip().split('年', maxsplit=1) + # year = Digit(chntext=year).digit2chntext() + '年' + # except ValueError: + # other = chntext + # year = '' + # if other: + # try: + # month, day = other.strip().split('月', maxsplit=1) + # month = Cardinal(chntext=month).chntext2cardinal() + '月' + # except ValueError: + # day = chntext + # month = '' + # if day: + # day = Cardinal(chntext=day[:-1]).chntext2cardinal() + day[-1] + # else: + # month = '' + # day = '' + # date = year + month + day + # self.date = date + # return self.date + + def date2chntext(self): + date = self.date + try: + year, other = date.strip().split("年", 1) + year = Digit(digit=year).digit2chntext() + "年" + except ValueError: + other = date + year = "" + if other: + try: + month, day = other.strip().split("月", 1) + month = Cardinal(cardinal=month).cardinal2chntext() + "月" + except ValueError: + day = date + month = "" + if day: + day = Cardinal(cardinal=day[:-1]).cardinal2chntext() + day[-1] + else: + month = "" + day = "" + chntext = year + month + day + self.chntext = chntext + return self.chntext + + +class Money: + """ + MONEY类 + """ + + def __init__(self, money=None, chntext=None): + self.money = money + self.chntext = chntext + + # def chntext2money(self): + # return self.money + + def money2chntext(self): + money = self.money + pattern = re.compile(r"(\d+(\.\d+)?)") + matchers = pattern.findall(money) + if matchers: + for matcher in matchers: + money = money.replace(matcher[0], Cardinal(cardinal=matcher[0]).cardinal2chntext()) + self.chntext = money + return self.chntext + + +class Percentage: + """ + PERCENTAGE类 + """ + + def __init__(self, percentage=None, chntext=None): + self.percentage = percentage + self.chntext = chntext + + def chntext2percentage(self): + return chn2num(self.chntext.strip().strip("百分之")) + "%" + + def percentage2chntext(self): + return "百分之" + num2chn(self.percentage.strip().strip("%")) + + +def normalize_nsw(raw_text): + text = "^" + raw_text + "$" + + # 规范化日期 + pattern = re.compile(r"\D+((([089]\d|(19|20)\d{2})年)?(\d{1,2}月(\d{1,2}[日号])?)?)") + matchers = pattern.findall(text) + if matchers: + # print('date') + for matcher in matchers: + text = text.replace(matcher[0], Date(date=matcher[0]).date2chntext(), 1) + + # 规范化金钱 + pattern = re.compile( + r"\D+((\d+(\.\d+)?)[多余几]?" + CURRENCY_UNITS + r"(\d" + CURRENCY_UNITS + r"?)?)" + ) + matchers = pattern.findall(text) + if matchers: + # print('money') + for matcher in matchers: + text = text.replace(matcher[0], Money(money=matcher[0]).money2chntext(), 1) + + # 规范化固话/手机号码 + # 手机 + # http://www.jihaoba.com/news/show/13680 + # 移动:139、138、137、136、135、134、159、158、157、150、151、152、188、187、182、183、184、178、198 + # 联通:130、131、132、156、155、186、185、176 + # 电信:133、153、189、180、181、177 + pattern = re.compile(r"\D((\+?86 ?)?1([38]\d|5[0-35-9]|7[678]|9[89])\d{8})\D") + matchers = pattern.findall(text) + if matchers: + # print('telephone') + for matcher in matchers: + text = text.replace(matcher[0], TelePhone(telephone=matcher[0]).telephone2chntext(), 1) + # 固话 + pattern = re.compile(r"\D((0(10|2[1-3]|[3-9]\d{2})-?)?[1-9]\d{6,7})\D") + matchers = pattern.findall(text) + if matchers: + # print('fixed telephone') + for matcher in matchers: + text = text.replace( + matcher[0], TelePhone(telephone=matcher[0]).telephone2chntext(fixed=True), 1 + ) + + # 规范化分数 + pattern = re.compile(r"(\d+/\d+)") + matchers = pattern.findall(text) + if matchers: + # print('fraction') + for matcher in matchers: + text = text.replace(matcher, Fraction(fraction=matcher).fraction2chntext(), 1) + + # 规范化百分数 + text = text.replace("%", "%") + pattern = re.compile(r"(\d+(\.\d+)?%)") + matchers = pattern.findall(text) + if matchers: + # print('percentage') + for matcher in matchers: + text = text.replace( + matcher[0], Percentage(percentage=matcher[0]).percentage2chntext(), 1 + ) + + # 规范化纯数+量词 + pattern = re.compile(r"(\d+(\.\d+)?)[多余几]?" + COM_QUANTIFIERS) + matchers = pattern.findall(text) + if matchers: + # print('cardinal+quantifier') + for matcher in matchers: + text = text.replace(matcher[0], Cardinal(cardinal=matcher[0]).cardinal2chntext(), 1) + + # 规范化数字编号 + pattern = re.compile(r"(\d{4,32})") + matchers = pattern.findall(text) + if matchers: + # print('digit') + for matcher in matchers: + text = text.replace(matcher, Digit(digit=matcher).digit2chntext(), 1) + + # 规范化纯数 + pattern = re.compile(r"(\d+(\.\d+)?)") + matchers = pattern.findall(text) + if matchers: + # print('cardinal') + for matcher in matchers: + text = text.replace(matcher[0], Cardinal(cardinal=matcher[0]).cardinal2chntext(), 1) + + # restore P2P, O2O, B2C, B2B etc + pattern = re.compile(r"(([a-zA-Z]+)二([a-zA-Z]+))") + matchers = pattern.findall(text) + if matchers: + # print('particular') + for matcher in matchers: + text = text.replace(matcher[0], matcher[1] + "2" + matcher[2], 1) + + return text.lstrip("^").rstrip("$") + + +def remove_erhua(text): + """ + 去除儿化音词中的儿: + 他女儿在那边儿 -> 他女儿在那边 + """ + + new_str = "" + while re.search("儿", text): + a = re.search("儿", text).span() + remove_er_flag = 0 + + if ER_WHITELIST_PATTERN.search(text): + b = ER_WHITELIST_PATTERN.search(text).span() + if b[0] <= a[0]: + remove_er_flag = 1 + + if remove_er_flag == 0: + new_str = new_str + text[0 : a[0]] + text = text[a[1] :] + else: + new_str = new_str + text[0 : b[1]] + text = text[b[1] :] + + text = new_str + text + return text + + +def remove_space(text): + tokens = text.split() + new = [] + for k, t in enumerate(tokens): + if k != 0: + if IN_EN_CHARS.get(tokens[k - 1][-1]) and IN_EN_CHARS.get(t[0]): + new.append(" ") + new.append(t) + return "".join(new) + + +class TextNorm: + def __init__( + self, + to_banjiao: bool = False, + to_upper: bool = False, + to_lower: bool = False, + remove_fillers: bool = False, + remove_erhua: bool = False, + check_chars: bool = False, + remove_space: bool = False, + ): + self.to_banjiao = to_banjiao + self.to_upper = to_upper + self.to_lower = to_lower + self.remove_fillers = remove_fillers + self.remove_erhua = remove_erhua + self.check_chars = check_chars + self.remove_space = remove_space + + def __call__(self, text): + if self.to_banjiao: + text = text.translate(QJ2BJ_TRANSFORM) + + if self.to_upper: + text = text.upper() + + if self.to_lower: + text = text.lower() + + if self.remove_fillers: + for c in FILLER_CHARS: + text = text.replace(c, "") + + if self.remove_erhua: + text = remove_erhua(text) + + text = normalize_nsw(text) + + text = text.translate(PUNCS_TRANSFORM) + + if self.check_chars: + for c in text: + if not IN_VALID_CHARS.get(c): + print(f"WARNING: illegal char {c} in: {text}", file=sys.stderr) + return "" + + if self.remove_space: + text = remove_space(text) + + return text + + +if __name__ == "__main__": + p = argparse.ArgumentParser() + + # normalizer options + p.add_argument("--to_banjiao", action="store_true", help="convert quanjiao chars to banjiao") + p.add_argument("--to_upper", action="store_true", help="convert to upper case") + p.add_argument("--to_lower", action="store_true", help="convert to lower case") + p.add_argument( + "--remove_fillers", action="store_true", help='remove filler chars such as "呃, 啊"' + ) + p.add_argument( + "--remove_erhua", + action="store_true", + help='remove erhua chars such as "他女儿在那边儿 -> 他女儿在那边"', + ) + p.add_argument( + "--check_chars", action="store_true", help="skip sentences containing illegal chars" + ) + p.add_argument("--remove_space", action="store_true", help="remove whitespace") + + # I/O options + p.add_argument( + "--log_interval", type=int, default=10000, help="log interval in number of processed lines" + ) + p.add_argument( + "--has_key", action="store_true", help="will be deprecated, set --format ark instead" + ) + p.add_argument( + "--format", type=str, choices=["txt", "ark", "tsv"], default="txt", help="input format" + ) + p.add_argument("ifile", help="input filename, assume utf-8 encoding") + p.add_argument("ofile", help="output filename") + + args = p.parse_args() + + if args.has_key: + args.format = "ark" + + normalizer = TextNorm( + to_banjiao=args.to_banjiao, + to_upper=args.to_upper, + to_lower=args.to_lower, + remove_fillers=args.remove_fillers, + remove_erhua=args.remove_erhua, + check_chars=args.check_chars, + remove_space=args.remove_space, + ) + + ndone = 0 + with open(args.ifile, "r", encoding="utf8") as istream, open( + args.ofile, "w+", encoding="utf8" + ) as ostream: + if args.format == "tsv": + reader = csv.DictReader(istream, delimiter="\t") + assert "TEXT" in reader.fieldnames + print("\t".join(reader.fieldnames), file=ostream) + + for item in reader: + text = item["TEXT"] + + if text: + text = normalizer(text) + + if text: + item["TEXT"] = text + print("\t".join([item[f] for f in reader.fieldnames]), file=ostream) + + ndone += 1 + if ndone % args.log_interval == 0: + print(f"text norm: {ndone} lines done.", file=sys.stderr, flush=True) + else: + for l in istream: + key, text = "", "" + if args.format == "ark": # KALDI archive, line format: "key text" + cols = l.strip().split(maxsplit=1) + key, text = cols[0], cols[1] if len(cols) == 2 else "" + else: + text = l.strip() + + if text: + text = normalizer(text) + + if text: + if args.format == "ark": + print(key + "\t" + text, file=ostream) + else: + print(text, file=ostream) + else: + print(" ", file=ostream) + ndone += 1 + if ndone % args.log_interval == 0: + print(f"text norm: {ndone} lines done.", file=sys.stderr, flush=True) + print(f"text norm: {ndone} lines done in total.", file=sys.stderr, flush=True) diff --git a/examples/industrial_data_pretraining/minmo/utils/compute-wer4 b/examples/industrial_data_pretraining/minmo/utils/compute-wer4 new file mode 100644 index 0000000000000000000000000000000000000000..c5d6790727c6951dba8c970381d4a3ffabe7fce6 GIT binary patch literal 2498296 zcmagH30zIx7dL+H?Uq}TTPjJojY1_Pm2gWc2_Ze1law(@lKD1BD56YBLM4REnKNZ3 zl}t(InM}zL|8?$K`}cA_@B8`h&-1m<`QCNcUVH7e$8&Da!aly9Vv&erNzC=+_`BK~ zcNL|e4`RH`>5AhNoD(O7f7@~voCdJ!00n)jpevRalWLYrNlp!N34bjnLae|G%1!W& zV>z>s&-wEHPg2k&=2y}hsqR_MadOo?|2^JTE*n4Rvcpt7%Ozx3b`zx8_jvR8?@gfZ zO`z|wyoL;8IjbLEHy$QbKNGP6?)ZBJpOIDnCs+9bc)w>+A^dgK6qU7*d-CG{%hNll zZaJ2-?+t?Q;WzN}|G$5kogJr440d$rI3>h(%Ea)QF}5*Ij<${tb~C2gbynFg14Vol zy#@?bsbv1pqyid&0lEA&2$jDE+ij zMPud4SS2TwavBz9zVRjoy87{MTxSXVmpI7HT``FZQtB+(?8%920=uMoj8vD1MM{xK z4Ep&0L<&)F1w_ttMS{pjUvD~>EC*Gb+}m5pDM2z(VYbmyVWiJ_D1Bo^+M1T|88nB2 zi?HG3@O?0IfUmugDW@hEDqGFtfo?_&n@FPdkL4rd%}N0HpeO4cPIvw7i&lKu`z{?Ay-#OWJ*qrW|J`7K`9YWbIul;*@eO z+mwq-7*c$ii%pOWhVmqGUGAJDK+Q_LDmh3tQl956mRkV3iqjOUB`DOv2|iLcDd(;( z=eQctX|OSYvz9BR;-H{8NlV=OujC>)&vQzHVG0lxDZaBT1(!5Ii<62(92cuh@aWr_Q$ihA ziff9~hJsOGGv}dd0V@T3i}RIUmdYncIbUr~k8_c6K~m1SP&8K0Ong8p27z=@abuZ9 z3w`^nRh&XBQfTT0Df@7oZnkVj@9A=7l7ws5!doekX-SRZ{GmN1XSf`ZgjWfqNO?9y zOQ(rk)6Fbtuo*OW5+?zXV$Pn^^OPxN@(M1V6HB$Vk|1ala_CNa9GIcOX(}NC^x#rg z&S?zR4C32wu!8dlEw+})B-S$N5-U*@=;MkT$rAZem6>wcMhkD5R9lT3n*hzs6?3MG zv?U5<4%cUCoYbD{Et6qDBRiwr>12z7!5?>`h&~pl3Ev{Hi zs?Mc~IE9SUl5lE^Ab!AZJvE7uT)IXHHGpq;^MjtGRnwN$K^ZQ*MQ`eb5jPVO!ZD&@Ff z(4kC)sN@nlLC27CR-Bp4dbGP)wluI%7Vj#(TB@~WiOgD^6N~!F6&&ZJtq|2HHI&+N zafnDFao6I_^_Q$_&{pT-ip6pmQ9_hlaeTVi)6`7yR3s5Ya6puBE~YS)@O6Rc=hW1c za=+7{R8qJ^Pog2?DtTVcS4mp1?i?pelEW3>!+LWHDHkI#6t%E=%*oWmY6{VL@1WEC zG^eI75_7Ty`B3l;r_hyiVg>Yc2YpS+x@?(J9}3fzDiqRovZb87R3w*xsk|4JoSah{ zb(V>8#ww)}h`P?4e3cwNvrmjQ1vPPm|5}5ADt#Qz zrJjb2j40=PN@`|!WTsnZ}^up6=}PRvpMx_ur+_Whn!PNz+GV5W^1{g zyMoiSH-jdvQF4A?Wg<7x=>%@SG%jA6Bodj`K>5BBh!SWr4GWPtRl0M12$bq4X(n;9vC3GnM1D~$O6IsBTmq=MB$lXga;b&-W;JfyLBke)U{e$E z#UzF1AfqHViG>5GjAB7vlNU)ih0Hq0Ui-Cvwl3FIp)Z!XXWDaDpdxayG)a21 z>m|8ZE)|<8-DI4;)F{|Sx`>lHWXCFFgE+Yxrwz)XYTDp=i9%*3=I^9I+2DS&Y(KRi znYTj0r7H9FxK$Pje)3?sfwg8jw?$WMVrrL68wrPT4@oBM5 z4i^g}uwNW!CYNY(m%$|?Ie%GpyVzL!beTk!kPQvZnF3%=;S_%0AHHl|_*bdUNfV`f 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

DyA5nDr63F69bi@E|er}3HSE;r8cPYx4 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%0DNVEvSwkGXz^WBe#{y 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 "A" and curr.upper() <= "Z" or curr == "'": + currEn = True + if i == 0: + newline = newline + curr.upper() + else: + if lastEn == True and currEn == True: + newline = newline + curr.upper() + else: + newline = newline + " " + curr.upper() + if flag == -1: + lastEn = False + else: + lastEn = currEn + ret = re.sub("[ ]{1,}", " ", newline) + ret = ret + if flag <= 0: + ret = ret + " " + "(" + name + ")" + else: + ret = name + "\t" + ret + return ret + + +def recoformat(line): + newline = "" + en_flag = 0 # 0: no-english 1 : english 2: former + for i in range(0, len(line)): + word = line[i] + if ord(word) == 32: + if en_flag == 0: + continue + else: + en_flag = 0 + newline += " " + # print line[i],ord(word) + if (word >= "\u4e00" and word <= "\u9fa5") or (word >= "\u0030" and word <= "\u0039"): + if en_flag == 1: + newline += " " + word + else: + newline += word + en_flag = 0 + # print "-----",newline + elif ( + (word >= "\u0041" and word <= "\u005a") + or (word >= "\u0061" and word <= "\u007a") + or word == "'" + ): + if en_flag == 0: + newline += " " + ("" if (word == "'") else word) + else: + newline += word + en_flag = 1 + # print "+++",newline + else: + newline += " " + word + # print "0-0-0-0",newline + newline = newline + newline = re.sub("[ ]{1,}", " ", newline) + newline = newline + return newline + + +def numbersingle(line): + chnu = ["零", "一", "二", "三", "四", "五", "六", "七", "八", "九", "点"] + newline = "" + for id in range(len(line)): + if re.findall(r"\.", line[id]): + if re.findall(r"\.\s*$", line[id]): + newline += "." + else: + newline += chnu[10] + elif re.search(r"0", line[id]): + if id > 0 and id < len(line) - 1: + if ( + re.search(r"\d", line[id - 1]) + and (not re.search(r"\d", line[id + 1])) + and (not re.search(r"0", line[id - 1])) + ): + if id > 2 and len(line) > 2 and (not re.search(r"\d", line[id - 1])): + newline = newline[:-1] + newline += chnu[int(line[id - 1])] + "十" + else: + newline += chnu[int(line[id])] + else: + newline += chnu[int(line[id])] + else: + newline += chnu[int(line[id])] + elif re.search(r"\d", line[id]): + newline += chnu[int(line[id])] + else: + newline += line[id] + return newline + + +def ch_number2digit(line): + number_flag = 0 + zero_flag = 0 + # print "ch_umber2digit---------",line + bits = { + "零": "1", + "十": "2", + "百": "3", + "千": "4", + "万": "5", + "十万": "6", + "百万": "7", + "千万": "8", + } + # chnu={'零':"0",'一':"1",'二':"2",'三':"3",'四':"4",'五':"5",'六':"6",'七':"7",'八':"8",'九':"9",'十':"10"] + chsh = { + "一": "1", + "二": "2", + "三": "3", + "四": "4", + "五": "5", + "六": "6", + "七": "7", + "八": "8", + "九": "9", + "两": "2", + "幺": "1", + } + unit = {"里": "1", "克": "1", "米": "1"} + newline = "" + digit = [] + bit = [] + onebit = "" + # digitstr="" + for i in range(len(line)): + if ord(line[i]) == 32: + newline += " " + continue + # print line[i],str(ord(line[i])) + if line[i] in chsh: + number_flag = 1 + if line[i] == "两": + if (i == len(line) - 1) or ( + (line[i + 1] not in chsh.keys()) and (line[i + 1] not in bits.keys()) + ): + number_flag = -1 + if number_flag == 1: + digit.append(chsh[line[i]]) + + elif "十" == line[i] and number_flag == 0: + number_flag = 2 + digit.append("1") + bit.append(line[i]) + elif "十" == line[i] and number_flag == 3: + digit.append("1") + bit.append(line[i]) + elif ("零" == line[i]) and (number_flag == 0 or number_flag == 1): + digit.append("0") + elif ("零" == line[i]) and number_flag == 3: + zero_flag = 1 + elif number_flag == 1 and line[i] in bits: + number_flag = 3 + if line[i] == "千": + if i < len(line) - 1: + if line[i + 1] in unit: + number_flag = -1 + if number_flag == 3: + onebit = line[i] + bit.append(onebit) + elif number_flag == 3 and line[i] in bits: + onebit = bit[-1] + line[i] + if onebit in bits: + bit[-1] = onebit + else: + number_flag = -2 + else: + number_flag = -1 + if len(digit) > 0 and number_flag == -1: + number_flag = -2 + if i == (len(line) - 1) and number_flag >= 0: + number_flag = -1 + # print "number_end_flag",number_flag + if number_flag < 0: + newdigit = "" + # print digit + # print "length:",len(bit), #bit[0]#,bit[0] + if len(digit) > 0: # and (len(digit) == len(bit))): + if len(bit) == 1 and zero_flag == 0 and bit[0] == "百" and len(bit) != len(digit): + bit.append("十") + if len(digit) == (len(bit) + 1): + bit.append("零") + # print digit[:] + # print bit[:] + if len(digit) == len(bit): + for m in range(len(digit))[-1::-1]: + if int(bits[bit[m]]) == int(len(newdigit) + 1): + newdigit += digit[m] + else: + nu = int(bits[bit[m]]) - len(newdigit) - 1 + for n in range(nu): + newdigit += "0" + newdigit += digit[m] + for z in range(len(newdigit))[-1::-1]: + newline += newdigit[z] + else: + newline += "".join(digit) + bit = [] + digit = [] + zero_flag = 0 + else: + newline += line[i] + if number_flag == -2: + newline += line[i] + number_flag = 0 + return newline + + +def special(line): + # print line + newline = "" + for e in range(len(line)): + # print "e ord\t",line[e],ord(line[e]) + if ord(line[e]) == 247: + newline += "除以" + elif ord(line[e]) == 215: + newline += "乘以" + elif ord(line[e]) == 61: + newline += "等于" + elif ord(line[e]) == 43: + newline += "加" + elif ord(line[e]) == 45: + newline += "负" + elif ord(line[e]) == 8451: + newline += "摄氏度" + elif ord(line[e]) == 13217: + newline += "平方米" + elif ord(line[e]) == 8240 or ord(line[e]) == 65130: + newline += "%" + elif ord(line[e]) == 46: + newline += "点" + elif ord(line[e]) == 176: + newline += "度" + angel = 1 + elif ord(line[e]) == 8242 and angel == 1: + newline += "分" + else: + newline += line[e] + return newline + + +if __name__ == "__main__": + if len(sys.argv[1:]) < 1: + sys.stderr.write("Usage:\n .py reco.result\n") + sys.stderr.write(" reco.result: idrecoresult\n") + sys.exit(1) + f = open(sys.argv[1]) + flag = 0 + if len(sys.argv[1:]) > 1: + flag = int(sys.argv[2]) + for line in f.readlines(): + if not line: + continue + line = line.rstrip() + # print line + tmp = line.split("\t") + if len(tmp) < 2: + tmp = line.split(",") + if len(tmp) < 2: + tmp = line.split(" ", 1) + if len(tmp) < 2: + name = tmp[0] + content = "" + print(content) + continue + name = tmp[0] + content = tmp[1] + name = re.sub("\.pcm", "", name) + name = re.sub("\.wav", "", name) + content = recoformat(content) + content = numbersingle(content) + # print "single",content + content = ch_number2digit(content) + # print "digit",content + content = special(content) + # print "special",content + content = scoreformat(name, content, flag) + print(content) + f.close() diff --git a/examples/industrial_data_pretraining/minmo/utils/format_bpemodel_res.py b/examples/industrial_data_pretraining/minmo/utils/format_bpemodel_res.py new file mode 100644 index 000000000..877bf6cda --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/format_bpemodel_res.py @@ -0,0 +1,43 @@ +import sentencepiece as spm +import sys +import string + + +input_file = sys.argv[1] +output_file = sys.argv[2] + +vocab_file = "/nfsspeech/beinian.lzr/workspace/datasets/vocab/funasr/chn_jpn_yue_eng_langid/chn_jpn_yue_eng_langid.vocab.funasr" +bpemodel_file = "/nfsspeech/beinian.lzr/workspace/datasets/vocab/funasr/chn_jpn_yue_eng_langid/chn_jpn_yue_eng_langid.bpe.model" + +vocab_file = "/nfs/beinian.lzr/workspace/local_dataset/vocab/chn_jpn_yue_eng_aed_ser/chn_jpn_yue_eng_spectok.vocab.funasr" +bpemodel_file = "/nfs/beinian.lzr/workspace/local_dataset/vocab/chn_jpn_yue_eng_aed_ser/chn_jpn_yue_eng_spectok.bpe.model" + +vocab_file = "/nfs/beinian.lzr/workspace/local_dataset/vocab/chn_jpn_yue_eng_aed_ser_fix_missing/chn_jpn_yue_eng_spectok_fix.vocab.funasr" +bpemodel_file = "/nfs/beinian.lzr/workspace/local_dataset/vocab/chn_jpn_yue_eng_aed_ser_fix_missing/chn_jpn_yue_eng_spectok_fix.bpe.model" + +sp = spm.SentencePieceProcessor() +sp.load(bpemodel_file) + +vocab_dct = {} +idx = 0 +with open(vocab_file) as f: + for line in f: + ch = line.strip() + vocab_dct[ch] = idx + idx += 1 + +output_fout = open(output_file, "w") + +with open(input_file) as f: + for line in f: + content = line.strip().split(" ", 1) + if len(content) == 2: + key = content[0] + token = content[1].split() + else: + key = content[0] + token = [] + token_int = [vocab_dct[x] for x in token] + token_int = list(filter(lambda x: x < 20055, token_int)) + text = sp.decode(token_int).lower() + output_fout.writelines("{} {}\n".format(key, text)) diff --git a/examples/industrial_data_pretraining/minmo/utils/format_remove_punc.py b/examples/industrial_data_pretraining/minmo/utils/format_remove_punc.py new file mode 100644 index 000000000..0c6b694f7 --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/format_remove_punc.py @@ -0,0 +1,24 @@ +import sys +import string + +input_file = sys.argv[1] +output_file = sys.argv[2] + +with open(input_file, "r") as infile, open(output_file, "w") as outfile: + for line in infile: + content = line.strip().split("\t", 1) + if len(content) == 2: + utt, text = content[0], content[1] + else: + utt = content[0] + text = "" + # 创建一个翻译表,将所有标点符号(除了撇号)映射为 None + translator = str.maketrans("", "", string.punctuation.replace("'", "")) + + # 使用翻译表去除标点符号 + no_punctuation_text = text.translate(translator) + + # 将所有英文字符转换成小写 + lowercase_text = no_punctuation_text.lower() + + outfile.write(utt + "\t" + lowercase_text + "\n") diff --git a/examples/industrial_data_pretraining/minmo/utils/openai_whisper.json b/examples/industrial_data_pretraining/minmo/utils/openai_whisper.json new file mode 100644 index 000000000..bd84ae73f --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/openai_whisper.json @@ -0,0 +1,1742 @@ +{ + "accessorise": "accessorize", + "accessorised": "accessorized", + "accessorises": "accessorizes", + "accessorising": "accessorizing", + "acclimatisation": "acclimatization", + "acclimatise": "acclimatize", + "acclimatised": "acclimatized", + "acclimatises": "acclimatizes", + "acclimatising": "acclimatizing", + "accoutrements": "accouterments", + "aeon": "eon", + "aeons": "eons", + "aerogramme": "aerogram", + "aerogrammes": "aerograms", + "aeroplane": "airplane", + "aeroplanes": "airplanes", + "aesthete": "esthete", + "aesthetes": "esthetes", + "aesthetic": "esthetic", + "aesthetically": "esthetically", + "aesthetics": "esthetics", + "aetiology": "etiology", + "ageing": "aging", + "aggrandisement": "aggrandizement", + "agonise": "agonize", + "agonised": "agonized", + "agonises": "agonizes", + "agonising": "agonizing", + "agonisingly": "agonizingly", + "almanack": "almanac", + "almanacks": "almanacs", + "aluminium": "aluminum", + "amortisable": "amortizable", + "amortisation": "amortization", + "amortisations": "amortizations", + "amortise": "amortize", + "amortised": "amortized", + "amortises": "amortizes", + "amortising": "amortizing", + "amphitheatre": "amphitheater", + "amphitheatres": "amphitheaters", + "anaemia": "anemia", + "anaemic": "anemic", + "anaesthesia": "anesthesia", + "anaesthetic": "anesthetic", + "anaesthetics": "anesthetics", + "anaesthetise": "anesthetize", + "anaesthetised": "anesthetized", + "anaesthetises": "anesthetizes", + "anaesthetising": "anesthetizing", + "anaesthetist": "anesthetist", + "anaesthetists": "anesthetists", + "anaesthetize": "anesthetize", + "anaesthetized": "anesthetized", + "anaesthetizes": "anesthetizes", + "anaesthetizing": "anesthetizing", + "analogue": "analog", + "analogues": "analogs", + "analyse": "analyze", + "analysed": "analyzed", + "analyses": "analyzes", + "analysing": "analyzing", + "anglicise": "anglicize", + "anglicised": "anglicized", + "anglicises": "anglicizes", + "anglicising": "anglicizing", + "annualised": "annualized", + "antagonise": "antagonize", + "antagonised": "antagonized", + "antagonises": "antagonizes", + "antagonising": "antagonizing", + "apologise": "apologize", + "apologised": "apologized", + "apologises": "apologizes", + "apologising": "apologizing", + "appal": "appall", + "appals": "appalls", + "appetiser": "appetizer", + "appetisers": "appetizers", + "appetising": "appetizing", + "appetisingly": "appetizingly", + "arbour": "arbor", + "arbours": "arbors", + "archeological": "archaeological", + "archaeologically": "archeologically", + "archaeologist": "archeologist", + "archaeologists": "archeologists", + "archaeology": "archeology", + "ardour": "ardor", + "armour": "armor", + "armoured": "armored", + "armourer": "armorer", + "armourers": "armorers", + "armouries": "armories", + "armoury": "armory", + "artefact": "artifact", + "artefacts": "artifacts", + "authorise": "authorize", + "authorised": "authorized", + "authorises": "authorizes", + "authorising": "authorizing", + "axe": "ax", + "backpedalled": "backpedaled", + "backpedalling": "backpedaling", + "bannister": "banister", + "bannisters": "banisters", + "baptise": "baptize", + "baptised": "baptized", + "baptises": "baptizes", + "baptising": "baptizing", + "bastardise": "bastardize", + "bastardised": "bastardized", + "bastardises": "bastardizes", + "bastardising": "bastardizing", + "battleax": "battleaxe", + "baulk": "balk", + "baulked": "balked", + "baulking": "balking", + "baulks": "balks", + "bedevilled": "bedeviled", + "bedevilling": "bedeviling", + "behaviour": "behavior", + "behavioural": "behavioral", + "behaviourism": "behaviorism", + "behaviourist": "behaviorist", + "behaviourists": "behaviorists", + "behaviours": "behaviors", + "behove": "behoove", + "behoved": "behooved", + "behoves": "behooves", + "bejewelled": "bejeweled", + "belabour": "belabor", + "belaboured": "belabored", + "belabouring": "belaboring", + "belabours": "belabors", + "bevelled": "beveled", + "bevvies": "bevies", + "bevvy": "bevy", + "biassed": "biased", + "biassing": "biasing", + "bingeing": "binging", + "bougainvillaea": "bougainvillea", + "bougainvillaeas": "bougainvilleas", + "bowdlerise": "bowdlerize", + "bowdlerised": "bowdlerized", + "bowdlerises": "bowdlerizes", + "bowdlerising": "bowdlerizing", + "breathalyse": "breathalyze", + "breathalysed": "breathalyzed", + "breathalyser": "breathalyzer", + "breathalysers": "breathalyzers", + "breathalyses": "breathalyzes", + "breathalysing": "breathalyzing", + "brutalise": "brutalize", + "brutalised": "brutalized", + "brutalises": "brutalizes", + "brutalising": "brutalizing", + "busses": "buses", + "bussing": "busing", + "caesarean": "cesarean", + "caesareans": "cesareans", + "calibre": "caliber", + "calibres": "calibers", + "calliper": "caliper", + "callipers": "calipers", + "callisthenics": "calisthenics", + "canalise": "canalize", + "canalised": "canalized", + "canalises": "canalizes", + "canalising": "canalizing", + "cancelation": "cancellation", + "cancelations": "cancellations", + "cancelled": "canceled", + "cancelling": "canceling", + "candour": "candor", + "cannibalise": "cannibalize", + "cannibalised": "cannibalized", + "cannibalises": "cannibalizes", + "cannibalising": "cannibalizing", + "canonise": "canonize", + "canonised": "canonized", + "canonises": "canonizes", + "canonising": "canonizing", + "capitalise": "capitalize", + "capitalised": "capitalized", + "capitalises": "capitalizes", + "capitalising": "capitalizing", + "caramelise": "caramelize", + "caramelised": "caramelized", + "caramelises": "caramelizes", + "caramelising": "caramelizing", + "carbonise": "carbonize", + "carbonised": "carbonized", + "carbonises": "carbonizes", + "carbonising": "carbonizing", + "carolled": "caroled", + "carolling": "caroling", + "catalogue": "catalog", + "catalogued": "cataloged", + "catalogues": "catalogs", + "cataloguing": "cataloging", + "catalyse": "catalyze", + "catalysed": "catalyzed", + "catalyses": "catalyzes", + "catalysing": "catalyzing", + "categorise": "categorize", + "categorised": "categorized", + "categorises": "categorizes", + "categorising": "categorizing", + "cauterise": "cauterize", + "cauterised": "cauterized", + "cauterises": "cauterizes", + "cauterising": "cauterizing", + "cavilled": "caviled", + "cavilling": "caviling", + "centigramme": "centigram", + "centigrammes": "centigrams", + "centilitre": "centiliter", + "centilitres": "centiliters", + "centimetre": "centimeter", + "centimetres": "centimeters", + "centralise": "centralize", + "centralised": "centralized", + "centralises": "centralizes", + "centralising": "centralizing", + "centre": "center", + "centred": "centered", + "centrefold": "centerfold", + "centrefolds": "centerfolds", + "centrepiece": "centerpiece", + "centrepieces": "centerpieces", + "centres": "centers", + "channelled": "channeled", + "channelling": "channeling", + "characterise": "characterize", + "characterised": "characterized", + "characterises": "characterizes", + "characterising": "characterizing", + "cheque": "check", + "chequebook": "checkbook", + "chequebooks": "checkbooks", + "chequered": "checkered", + "cheques": "checks", + "chilli": "chili", + "chimaera": "chimera", + "chimaeras": "chimeras", + "chiselled": "chiseled", + "chiselling": "chiseling", + "circularise": "circularize", + "circularised": "circularized", + "circularises": "circularizes", + "circularising": "circularizing", + "civilise": "civilize", + "civilised": "civilized", + "civilises": "civilizes", + "civilising": "civilizing", + "clamour": "clamor", + "clamoured": "clamored", + "clamouring": "clamoring", + "clamours": "clamors", + "clangour": "clangor", + "clarinettist": "clarinetist", + "clarinettists": "clarinetists", + "collectivise": "collectivize", + "collectivised": "collectivized", + "collectivises": "collectivizes", + "collectivising": "collectivizing", + "colonisation": "colonization", + "colonise": "colonize", + "colonised": "colonized", + "coloniser": "colonizer", + "colonisers": "colonizers", + "colonises": "colonizes", + "colonising": "colonizing", + "colour": "color", + "colourant": "colorant", + "colourants": "colorants", + "coloured": "colored", + "coloureds": "coloreds", + "colourful": "colorful", + "colourfully": "colorfully", + "colouring": "coloring", + "colourize": "colorize", + "colourized": "colorized", + "colourizes": "colorizes", + "colourizing": "colorizing", + "colourless": "colorless", + "colours": "colors", + "commercialise": "commercialize", + "commercialised": "commercialized", + "commercialises": "commercializes", + "commercialising": "commercializing", + "compartmentalise": "compartmentalize", + "compartmentalised": "compartmentalized", + "compartmentalises": "compartmentalizes", + "compartmentalising": "compartmentalizing", + "computerise": "computerize", + "computerised": "computerized", + "computerises": "computerizes", + "computerising": "computerizing", + "conceptualise": "conceptualize", + "conceptualised": "conceptualized", + "conceptualises": "conceptualizes", + "conceptualising": "conceptualizing", + "connexion": "connection", + "connexions": "connections", + "contextualise": "contextualize", + "contextualised": "contextualized", + "contextualises": "contextualizes", + "contextualising": "contextualizing", + "cosier": "cozier", + "cosies": "cozies", + "cosiest": "coziest", + "cosily": "cozily", + "cosiness": "coziness", + "cosy": "cozy", + "councillor": "councilor", + "councillors": "councilors", + "counselled": "counseled", + "counselling": "counseling", + "counsellor": "counselor", + "counsellors": "counselors", + "crenelated": "crenellated", + "criminalise": "criminalize", + "criminalised": "criminalized", + "criminalises": "criminalizes", + "criminalising": "criminalizing", + "criticise": "criticize", + "criticised": "criticized", + "criticises": "criticizes", + "criticising": "criticizing", + "crueller": "crueler", + "cruellest": "cruelest", + "crystallisation": "crystallization", + "crystallise": "crystallize", + "crystallised": "crystallized", + "crystallises": "crystallizes", + "crystallising": "crystallizing", + "cudgelled": "cudgeled", + "cudgelling": "cudgeling", + "customise": "customize", + "customised": "customized", + "customises": "customizes", + "customising": "customizing", + "cypher": "cipher", + "cyphers": "ciphers", + "decentralisation": "decentralization", + "decentralise": "decentralize", + "decentralised": "decentralized", + "decentralises": "decentralizes", + "decentralising": "decentralizing", + "decriminalisation": "decriminalization", + "decriminalise": "decriminalize", + "decriminalised": "decriminalized", + "decriminalises": "decriminalizes", + "decriminalising": "decriminalizing", + "defence": "defense", + "defenceless": "defenseless", + "defences": "defenses", + "dehumanisation": "dehumanization", + "dehumanise": "dehumanize", + "dehumanised": "dehumanized", + "dehumanises": "dehumanizes", + "dehumanising": "dehumanizing", + "demeanour": "demeanor", + "demilitarisation": "demilitarization", + "demilitarise": "demilitarize", + "demilitarised": "demilitarized", + "demilitarises": "demilitarizes", + "demilitarising": "demilitarizing", + "demobilisation": "demobilization", + "demobilise": "demobilize", + "demobilised": "demobilized", + "demobilises": "demobilizes", + "demobilising": "demobilizing", + "democratisation": "democratization", + "democratise": "democratize", + "democratised": "democratized", + "democratises": "democratizes", + "democratising": "democratizing", + "demonise": "demonize", + "demonised": "demonized", + "demonises": "demonizes", + "demonising": "demonizing", + "demoralisation": "demoralization", + "demoralise": "demoralize", + "demoralised": "demoralized", + "demoralises": "demoralizes", + "demoralising": "demoralizing", + "denationalisation": "denationalization", + "denationalise": "denationalize", + "denationalised": "denationalized", + "denationalises": "denationalizes", + "denationalising": "denationalizing", + "deodorise": "deodorize", + "deodorised": "deodorized", + "deodorises": "deodorizes", + "deodorising": "deodorizing", + "depersonalise": "depersonalize", + "depersonalised": "depersonalized", + "depersonalises": "depersonalizes", + "depersonalising": "depersonalizing", + "deputise": "deputize", + "deputised": "deputized", + "deputises": "deputizes", + "deputising": "deputizing", + "desensitisation": "desensitization", + "desensitise": "desensitize", + "desensitised": "desensitized", + "desensitises": "desensitizes", + "desensitising": "desensitizing", + "destabilisation": "destabilization", + "destabilise": "destabilize", + "destabilised": "destabilized", + "destabilises": "destabilizes", + "destabilising": "destabilizing", + "dialled": "dialed", + "dialling": "dialing", + "dialogue": "dialog", + "dialogues": "dialogs", + "diarrhoea": "diarrhea", + "digitise": "digitize", + "digitised": "digitized", + "digitises": "digitizes", + "digitising": "digitizing", + "disc": "disk", + "discolour": "discolor", + "discoloured": "discolored", + "discolouring": "discoloring", + "discolours": "discolors", + "discs": "disks", + "disembowelled": "disemboweled", + "disembowelling": "disemboweling", + "disfavour": "disfavor", + "dishevelled": "disheveled", + "dishonour": "dishonor", + "dishonourable": "dishonorable", + "dishonourably": "dishonorably", + "dishonoured": "dishonored", + "dishonouring": "dishonoring", + "dishonours": "dishonors", + "disorganisation": "disorganization", + "disorganised": "disorganized", + "distil": "distill", + "distils": "distills", + "dramatisation": "dramatization", + "dramatisations": "dramatizations", + "dramatise": "dramatize", + "dramatised": "dramatized", + "dramatises": "dramatizes", + "dramatising": "dramatizing", + "draught": "draft", + "draughtboard": "draftboard", + "draughtboards": "draftboards", + "draughtier": "draftier", + "draughtiest": "draftiest", + "draughts": "drafts", + "draughtsman": "draftsman", + "draughtsmanship": "draftsmanship", + "draughtsmen": "draftsmen", + "draughtswoman": "draftswoman", + "draughtswomen": "draftswomen", + "draughty": "drafty", + "drivelled": "driveled", + "drivelling": "driveling", + "duelled": "dueled", + "duelling": "dueling", + "economise": "economize", + "economised": "economized", + "economises": "economizes", + "economising": "economizing", + "edoema": "edema", + "editorialise": "editorialize", + "editorialised": "editorialized", + "editorialises": "editorializes", + "editorialising": "editorializing", + "empathise": "empathize", + "empathised": "empathized", + "empathises": "empathizes", + "empathising": "empathizing", + "emphasise": "emphasize", + "emphasised": "emphasized", + "emphasises": "emphasizes", + "emphasising": "emphasizing", + "enamelled": "enameled", + "enamelling": "enameling", + "enamoured": "enamored", + "encyclopaedia": "encyclopedia", + "encyclopaedias": "encyclopedias", + "encyclopaedic": "encyclopedic", + "endeavour": "endeavor", + "endeavoured": "endeavored", + "endeavouring": "endeavoring", + "endeavours": "endeavors", + "energise": "energize", + "energised": "energized", + "energises": "energizes", + "energising": "energizing", + "enrol": "enroll", + "enrols": "enrolls", + "enthral": "enthrall", + "enthrals": "enthralls", + "epaulette": "epaulet", + "epaulettes": "epaulets", + "epicentre": "epicenter", + "epicentres": "epicenters", + "epilogue": "epilog", + "epilogues": "epilogs", + "epitomise": "epitomize", + "epitomised": "epitomized", + "epitomises": "epitomizes", + "epitomising": "epitomizing", + "equalisation": "equalization", + "equalise": "equalize", + "equalised": "equalized", + "equaliser": "equalizer", + "equalisers": "equalizers", + "equalises": "equalizes", + "equalising": "equalizing", + "eulogise": "eulogize", + "eulogised": "eulogized", + "eulogises": "eulogizes", + "eulogising": "eulogizing", + "evangelise": "evangelize", + "evangelised": "evangelized", + "evangelises": "evangelizes", + "evangelising": "evangelizing", + "exorcise": "exorcize", + "exorcised": "exorcized", + "exorcises": "exorcizes", + "exorcising": "exorcizing", + "extemporisation": "extemporization", + "extemporise": "extemporize", + "extemporised": "extemporized", + "extemporises": "extemporizes", + "extemporising": "extemporizing", + "externalisation": "externalization", + "externalisations": "externalizations", + "externalise": "externalize", + "externalised": "externalized", + "externalises": "externalizes", + "externalising": "externalizing", + "factorise": "factorize", + "factorised": "factorized", + "factorises": "factorizes", + "factorising": "factorizing", + "faecal": "fecal", + "faeces": "feces", + "familiarisation": "familiarization", + "familiarise": "familiarize", + "familiarised": "familiarized", + "familiarises": "familiarizes", + "familiarising": "familiarizing", + "fantasise": "fantasize", + "fantasised": "fantasized", + "fantasises": "fantasizes", + "fantasising": "fantasizing", + "favour": "favor", + "favourable": "favorable", + "favourably": "favorably", + "favoured": "favored", + "favouring": "favoring", + "favourite": "favorite", + "favourites": "favorites", + "favouritism": "favoritism", + "favours": "favors", + "feminise": "feminize", + "feminised": "feminized", + "feminises": "feminizes", + "feminising": "feminizing", + "fertilisation": "fertilization", + "fertilise": "fertilize", + "fertilised": "fertilized", + "fertiliser": "fertilizer", + "fertilisers": "fertilizers", + "fertilises": "fertilizes", + "fertilising": "fertilizing", + "fervour": "fervor", + "fibre": "fiber", + "fibreglass": "fiberglass", + "fibres": "fibers", + "fictionalisation": "fictionalization", + "fictionalisations": "fictionalizations", + "fictionalise": "fictionalize", + "fictionalised": "fictionalized", + "fictionalises": "fictionalizes", + "fictionalising": "fictionalizing", + "fillet": "filet", + "filleted": "fileted", + "filleting": "fileting", + "fillets": "filets", + "finalisation": "finalization", + "finalise": "finalize", + "finalised": "finalized", + "finalises": "finalizes", + "finalising": "finalizing", + "flautist": "flutist", + "flautists": "flutists", + "flavour": "flavor", + "flavoured": "flavored", + "flavouring": "flavoring", + "flavourings": "flavorings", + "flavourless": "flavorless", + "flavours": "flavors", + "flavoursome": "flavorsome", + "flyer / flier": "flier / flyer", + "foetal": "fetal", + "foetid": "fetid", + "foetus": "fetus", + "foetuses": "fetuses", + "formalisation": "formalization", + "formalise": "formalize", + "formalised": "formalized", + "formalises": "formalizes", + "formalising": "formalizing", + "fossilisation": "fossilization", + "fossilise": "fossilize", + "fossilised": "fossilized", + "fossilises": "fossilizes", + "fossilising": "fossilizing", + "fraternisation": "fraternization", + "fraternise": "fraternize", + "fraternised": "fraternized", + "fraternises": "fraternizes", + "fraternising": "fraternizing", + "fulfil": "fulfill", + "fulfilment": "fulfillment", + "fulfils": "fulfills", + "funnelled": "funneled", + "funnelling": "funneling", + "galvanise": "galvanize", + "galvanised": "galvanized", + "galvanises": "galvanizes", + "galvanising": "galvanizing", + "gambolled": "gamboled", + "gambolling": "gamboling", + "gaol": "jail", + "gaolbird": "jailbird", + "gaolbirds": "jailbirds", + "gaolbreak": "jailbreak", + "gaolbreaks": "jailbreaks", + "gaoled": "jailed", + "gaoler": "jailer", + "gaolers": "jailers", + "gaoling": "jailing", + "gaols": "jails", + "gasses": "gases", + "gage": "gauge", + "gaged": "gauged", + "gages": "gauges", + "gaging": "gauging", + "generalisation": "generalization", + "generalisations": "generalizations", + "generalise": "generalize", + "generalised": "generalized", + "generalises": "generalizes", + "generalising": "generalizing", + "ghettoise": "ghettoize", + "ghettoised": "ghettoized", + "ghettoises": "ghettoizes", + "ghettoising": "ghettoizing", + "gipsies": "gypsies", + "glamorise": "glamorize", + "glamorised": "glamorized", + "glamorises": "glamorizes", + "glamorising": "glamorizing", + "glamor": "glamour", + "globalisation": "globalization", + "globalise": "globalize", + "globalised": "globalized", + "globalises": "globalizes", + "globalising": "globalizing", + "glueing": "gluing", + "goitre": "goiter", + "goitres": "goiters", + "gonorrhoea": "gonorrhea", + "gramme": "gram", + "grammes": "grams", + "gravelled": "graveled", + "grey": "gray", + "greyed": "grayed", + "greying": "graying", + "greyish": "grayish", + "greyness": "grayness", + "greys": "grays", + "grovelled": "groveled", + "grovelling": "groveling", + "groyne": "groin", + "groynes": "groins", + "gruelling": "grueling", + "gruellingly": "gruelingly", + "gryphon": "griffin", + "gryphons": "griffins", + "gynaecological": "gynecological", + "gynaecologist": "gynecologist", + "gynaecologists": "gynecologists", + "gynaecology": "gynecology", + "haematological": "hematological", + "haematologist": "hematologist", + "haematologists": "hematologists", + "haematology": "hematology", + "haemoglobin": "hemoglobin", + "haemophilia": "hemophilia", + "haemophiliac": "hemophiliac", + "haemophiliacs": "hemophiliacs", + "haemorrhage": "hemorrhage", + "haemorrhaged": "hemorrhaged", + "haemorrhages": "hemorrhages", + "haemorrhaging": "hemorrhaging", + "haemorrhoids": "hemorrhoids", + "harbour": "harbor", + "harboured": "harbored", + "harbouring": "harboring", + "harbours": "harbors", + "harmonisation": "harmonization", + "harmonise": "harmonize", + "harmonised": "harmonized", + "harmonises": "harmonizes", + "harmonising": "harmonizing", + "homoeopath": "homeopath", + "homoeopathic": "homeopathic", + "homoeopaths": "homeopaths", + "homoeopathy": "homeopathy", + "homogenise": "homogenize", + "homogenised": "homogenized", + "homogenises": "homogenizes", + "homogenising": "homogenizing", + "honour": "honor", + "honourable": "honorable", + "honourably": "honorably", + "honoured": "honored", + "honouring": "honoring", + "honours": "honors", + "hospitalisation": "hospitalization", + "hospitalise": "hospitalize", + "hospitalised": "hospitalized", + "hospitalises": "hospitalizes", + "hospitalising": "hospitalizing", + "humanise": "humanize", + "humanised": "humanized", + "humanises": "humanizes", + "humanising": "humanizing", + "humour": "humor", + "humoured": "humored", + "humouring": "humoring", + "humourless": "humorless", + "humours": "humors", + "hybridise": "hybridize", + "hybridised": "hybridized", + "hybridises": "hybridizes", + "hybridising": "hybridizing", + "hypnotise": "hypnotize", + "hypnotised": "hypnotized", + "hypnotises": "hypnotizes", + "hypnotising": "hypnotizing", + "hypothesise": "hypothesize", + "hypothesised": "hypothesized", + "hypothesises": "hypothesizes", + "hypothesising": "hypothesizing", + "idealisation": "idealization", + "idealise": "idealize", + "idealised": "idealized", + "idealises": "idealizes", + "idealising": "idealizing", + "idolise": "idolize", + "idolised": "idolized", + "idolises": "idolizes", + "idolising": "idolizing", + "immobilisation": "immobilization", + "immobilise": "immobilize", + "immobilised": "immobilized", + "immobiliser": "immobilizer", + "immobilisers": "immobilizers", + "immobilises": "immobilizes", + "immobilising": "immobilizing", + "immortalise": "immortalize", + "immortalised": "immortalized", + "immortalises": "immortalizes", + "immortalising": "immortalizing", + "immunisation": "immunization", + "immunise": "immunize", + "immunised": "immunized", + "immunises": "immunizes", + "immunising": "immunizing", + "impanelled": "impaneled", + "impanelling": "impaneling", + "imperilled": "imperiled", + "imperilling": "imperiling", + "individualise": "individualize", + "individualised": "individualized", + "individualises": "individualizes", + "individualising": "individualizing", + "industrialise": "industrialize", + "industrialised": "industrialized", + "industrialises": "industrializes", + "industrialising": "industrializing", + "inflexion": "inflection", + "inflexions": "inflections", + "initialise": "initialize", + "initialised": "initialized", + "initialises": "initializes", + "initialising": "initializing", + "initialled": "initialed", + "initialling": "initialing", + "instal": "install", + "instalment": "installment", + "instalments": "installments", + "instals": "installs", + "instil": "instill", + "instils": "instills", + "institutionalisation": "institutionalization", + "institutionalise": "institutionalize", + "institutionalised": "institutionalized", + "institutionalises": "institutionalizes", + "institutionalising": "institutionalizing", + "intellectualise": "intellectualize", + "intellectualised": "intellectualized", + "intellectualises": "intellectualizes", + "intellectualising": "intellectualizing", + "internalisation": "internalization", + "internalise": "internalize", + "internalised": "internalized", + "internalises": "internalizes", + "internalising": "internalizing", + "internationalisation": "internationalization", + "internationalise": "internationalize", + "internationalised": "internationalized", + "internationalises": "internationalizes", + "internationalising": "internationalizing", + "ionisation": "ionization", + "ionise": "ionize", + "ionised": "ionized", + "ioniser": "ionizer", + "ionisers": "ionizers", + "ionises": "ionizes", + "ionising": "ionizing", + "italicise": "italicize", + "italicised": "italicized", + "italicises": "italicizes", + "italicising": "italicizing", + "itemise": "itemize", + "itemised": "itemized", + "itemises": "itemizes", + "itemising": "itemizing", + "jeopardise": "jeopardize", + "jeopardised": "jeopardized", + "jeopardises": "jeopardizes", + "jeopardising": "jeopardizing", + "jewelled": "jeweled", + "jeweller": "jeweler", + "jewellers": "jewelers", + "jewellery": "jewelry", + "judgement": "judgment", + "kilogramme": "kilogram", + "kilogrammes": "kilograms", + "kilometre": "kilometer", + "kilometres": "kilometers", + "labelled": "labeled", + "labelling": "labeling", + "labour": "labor", + "laboured": "labored", + "labourer": "laborer", + "labourers": "laborers", + "labouring": "laboring", + "labours": "labors", + "lacklustre": "lackluster", + "legalisation": "legalization", + "legalise": "legalize", + "legalised": "legalized", + "legalises": "legalizes", + "legalising": "legalizing", + "legitimise": "legitimize", + "legitimised": "legitimized", + "legitimises": "legitimizes", + "legitimising": "legitimizing", + "leukaemia": "leukemia", + "levelled": "leveled", + "leveller": "leveler", + "levellers": "levelers", + "levelling": "leveling", + "libelled": "libeled", + "libelling": "libeling", + "libellous": "libelous", + "liberalisation": "liberalization", + "liberalise": "liberalize", + "liberalised": "liberalized", + "liberalises": "liberalizes", + "liberalising": "liberalizing", + "licence": "license", + "licenced": "licensed", + "licences": "licenses", + "licencing": "licensing", + "likeable": "likable", + "lionisation": "lionization", + "lionise": "lionize", + "lionised": "lionized", + "lionises": "lionizes", + "lionising": "lionizing", + "liquidise": "liquidize", + "liquidised": "liquidized", + "liquidiser": "liquidizer", + "liquidisers": "liquidizers", + "liquidises": "liquidizes", + "liquidising": "liquidizing", + "litre": "liter", + "litres": "liters", + "localise": "localize", + "localised": "localized", + "localises": "localizes", + "localising": "localizing", + "louvre": "louver", + "louvred": "louvered", + "louvres": "louvers", + "lustre": "luster", + "magnetise": "magnetize", + "magnetised": "magnetized", + "magnetises": "magnetizes", + "magnetising": "magnetizing", + "manoeuvrability": "maneuverability", + "manoeuvrable": "maneuverable", + "manoeuvre": "maneuver", + "manoeuvred": "maneuvered", + "manoeuvres": "maneuvers", + "manoeuvring": "maneuvering", + "manoeuvrings": "maneuverings", + "marginalisation": "marginalization", + "marginalise": "marginalize", + "marginalised": "marginalized", + "marginalises": "marginalizes", + "marginalising": "marginalizing", + "marshalled": "marshaled", + "marshalling": "marshaling", + "marvelled": "marveled", + "marvelling": "marveling", + "marvellous": "marvelous", + "marvellously": "marvelously", + "materialisation": "materialization", + "materialise": "materialize", + "materialised": "materialized", + "materialises": "materializes", + "materialising": "materializing", + "maximisation": "maximization", + "maximise": "maximize", + "maximised": "maximized", + "maximises": "maximizes", + "maximising": "maximizing", + "meagre": "meager", + "mechanisation": "mechanization", + "mechanise": "mechanize", + "mechanised": "mechanized", + "mechanises": "mechanizes", + "mechanising": "mechanizing", + "mediaeval": "medieval", + "memorialise": "memorialize", + "memorialised": "memorialized", + "memorialises": "memorializes", + "memorialising": "memorializing", + "memorise": "memorize", + "memorised": "memorized", + "memorises": "memorizes", + "memorising": "memorizing", + "mesmerise": "mesmerize", + "mesmerised": "mesmerized", + "mesmerises": "mesmerizes", + "mesmerising": "mesmerizing", + "metabolise": "metabolize", + "metabolised": "metabolized", + "metabolises": "metabolizes", + "metabolising": "metabolizing", + "metre": "meter", + "metres": "meters", + "micrometre": "micrometer", + "micrometres": "micrometers", + "militarise": "militarize", + "militarised": "militarized", + "militarises": "militarizes", + "militarising": "militarizing", + "milligramme": "milligram", + "milligrammes": "milligrams", + "millilitre": "milliliter", + "millilitres": "milliliters", + "millimetre": "millimeter", + "millimetres": "millimeters", + "miniaturisation": "miniaturization", + "miniaturise": "miniaturize", + "miniaturised": "miniaturized", + "miniaturises": "miniaturizes", + "miniaturising": "miniaturizing", + "minibusses": "minibuses", + "minimise": "minimize", + "minimised": "minimized", + "minimises": "minimizes", + "minimising": "minimizing", + "misbehaviour": "misbehavior", + "misdemeanour": "misdemeanor", + "misdemeanours": "misdemeanors", + "misspelt": "misspelled", + "mitre": "miter", + "mitres": "miters", + "mobilisation": "mobilization", + "mobilise": "mobilize", + "mobilised": "mobilized", + "mobilises": "mobilizes", + "mobilising": "mobilizing", + "modelled": "modeled", + "modeller": "modeler", + "modellers": "modelers", + "modelling": "modeling", + "modernise": "modernize", + "modernised": "modernized", + "modernises": "modernizes", + "modernising": "modernizing", + "moisturise": "moisturize", + "moisturised": "moisturized", + "moisturiser": "moisturizer", + "moisturisers": "moisturizers", + "moisturises": "moisturizes", + "moisturising": "moisturizing", + "monologue": "monolog", + "monologues": "monologs", + "monopolisation": "monopolization", + "monopolise": "monopolize", + "monopolised": "monopolized", + "monopolises": "monopolizes", + "monopolising": "monopolizing", + "moralise": "moralize", + "moralised": "moralized", + "moralises": "moralizes", + "moralising": "moralizing", + "motorised": "motorized", + "mould": "mold", + "moulded": "molded", + "moulder": "molder", + "mouldered": "moldered", + "mouldering": "moldering", + "moulders": "molders", + "mouldier": "moldier", + "mouldiest": "moldiest", + "moulding": "molding", + "mouldings": "moldings", + "moulds": "molds", + "mouldy": "moldy", + "moult": "molt", + "moulted": "molted", + "moulting": "molting", + "moults": "molts", + "moustache": "mustache", + "moustached": "mustached", + "moustaches": "mustaches", + "moustachioed": "mustachioed", + "multicoloured": "multicolored", + "nationalisation": "nationalization", + "nationalisations": "nationalizations", + "nationalise": "nationalize", + "nationalised": "nationalized", + "nationalises": "nationalizes", + "nationalising": "nationalizing", + "naturalisation": "naturalization", + "naturalise": "naturalize", + "naturalised": "naturalized", + "naturalises": "naturalizes", + "naturalising": "naturalizing", + "neighbour": "neighbor", + "neighbourhood": "neighborhood", + "neighbourhoods": "neighborhoods", + "neighbouring": "neighboring", + "neighbourliness": "neighborliness", + "neighbourly": "neighborly", + "neighbours": "neighbors", + "neutralisation": "neutralization", + "neutralise": "neutralize", + "neutralised": "neutralized", + "neutralises": "neutralizes", + "neutralising": "neutralizing", + "normalisation": "normalization", + "normalise": "normalize", + "normalised": "normalized", + "normalises": "normalizes", + "normalising": "normalizing", + "odour": "odor", + "odourless": "odorless", + "odours": "odors", + "oesophagus": "esophagus", + "oesophaguses": "esophaguses", + "oestrogen": "estrogen", + "offence": "offense", + "offences": "offenses", + "omelette": "omelet", + "omelettes": "omelets", + "optimise": "optimize", + "optimised": "optimized", + "optimises": "optimizes", + "optimising": "optimizing", + "organisation": "organization", + "organisational": "organizational", + "organisations": "organizations", + "organise": "organize", + "organised": "organized", + "organiser": "organizer", + "organisers": "organizers", + "organises": "organizes", + "organising": "organizing", + "orthopaedic": "orthopedic", + "orthopaedics": "orthopedics", + "ostracise": "ostracize", + "ostracised": "ostracized", + "ostracises": "ostracizes", + "ostracising": "ostracizing", + "outmanoeuvre": "outmaneuver", + "outmanoeuvred": "outmaneuvered", + "outmanoeuvres": "outmaneuvers", + "outmanoeuvring": "outmaneuvering", + "overemphasise": "overemphasize", + "overemphasised": "overemphasized", + "overemphasises": "overemphasizes", + "overemphasising": "overemphasizing", + "oxidisation": "oxidization", + "oxidise": "oxidize", + "oxidised": "oxidized", + "oxidises": "oxidizes", + "oxidising": "oxidizing", + "paederast": "pederast", + "paederasts": "pederasts", + "paediatric": "pediatric", + "paediatrician": "pediatrician", + "paediatricians": "pediatricians", + "paediatrics": "pediatrics", + "paedophile": "pedophile", + "paedophiles": "pedophiles", + "paedophilia": "pedophilia", + "palaeolithic": "paleolithic", + "palaeontologist": "paleontologist", + "palaeontologists": "paleontologists", + "palaeontology": "paleontology", + "panelled": "paneled", + "panelling": "paneling", + "panellist": "panelist", + "panellists": "panelists", + "paralyse": "paralyze", + "paralysed": "paralyzed", + "paralyses": "paralyzes", + "paralysing": "paralyzing", + "parcelled": "parceled", + "parcelling": "parceling", + "parlour": "parlor", + "parlours": "parlors", + "particularise": "particularize", + "particularised": "particularized", + "particularises": "particularizes", + "particularising": "particularizing", + "passivisation": "passivization", + "passivise": "passivize", + "passivised": "passivized", + "passivises": "passivizes", + "passivising": "passivizing", + "pasteurisation": "pasteurization", + "pasteurise": "pasteurize", + "pasteurised": "pasteurized", + "pasteurises": "pasteurizes", + "pasteurising": "pasteurizing", + "patronise": "patronize", + "patronised": "patronized", + "patronises": "patronizes", + "patronising": "patronizing", + "patronisingly": "patronizingly", + "pedalled": "pedaled", + "pedalling": "pedaling", + "pedestrianisation": "pedestrianization", + "pedestrianise": "pedestrianize", + "pedestrianised": "pedestrianized", + "pedestrianises": "pedestrianizes", + "pedestrianising": "pedestrianizing", + "penalise": "penalize", + "penalised": "penalized", + "penalises": "penalizes", + "penalising": "penalizing", + "pencilled": "penciled", + "pencilling": "penciling", + "personalise": "personalize", + "personalised": "personalized", + "personalises": "personalizes", + "personalising": "personalizing", + "pharmacopoeia": "pharmacopeia", + "pharmacopoeias": "pharmacopeias", + "philosophise": "philosophize", + "philosophised": "philosophized", + "philosophises": "philosophizes", + "philosophising": "philosophizing", + "philtre": "filter", + "philtres": "filters", + "phoney": "phony", + "plagiarise": "plagiarize", + "plagiarised": "plagiarized", + "plagiarises": "plagiarizes", + "plagiarising": "plagiarizing", + "plough": "plow", + "ploughed": "plowed", + "ploughing": "plowing", + "ploughman": "plowman", + "ploughmen": "plowmen", + "ploughs": "plows", + "ploughshare": "plowshare", + "ploughshares": "plowshares", + "polarisation": "polarization", + "polarise": "polarize", + "polarised": "polarized", + "polarises": "polarizes", + "polarising": "polarizing", + "politicisation": "politicization", + "politicise": "politicize", + "politicised": "politicized", + "politicises": "politicizes", + "politicising": "politicizing", + "popularisation": "popularization", + "popularise": "popularize", + "popularised": "popularized", + "popularises": "popularizes", + "popularising": "popularizing", + "pouffe": "pouf", + "pouffes": "poufs", + "practise": "practice", + "practised": "practiced", + "practises": "practices", + "practising": "practicing", + "praesidium": "presidium", + "praesidiums": "presidiums", + "pressurisation": "pressurization", + "pressurise": "pressurize", + "pressurised": "pressurized", + "pressurises": "pressurizes", + "pressurising": "pressurizing", + "pretence": "pretense", + "pretences": "pretenses", + "primaeval": "primeval", + "prioritisation": "prioritization", + "prioritise": "prioritize", + "prioritised": "prioritized", + "prioritises": "prioritizes", + "prioritising": "prioritizing", + "privatisation": "privatization", + "privatisations": "privatizations", + "privatise": "privatize", + "privatised": "privatized", + "privatises": "privatizes", + "privatising": "privatizing", + "professionalisation": "professionalization", + "professionalise": "professionalize", + "professionalised": "professionalized", + "professionalises": "professionalizes", + "professionalising": "professionalizing", + "programme": "program", + "programmes": "programs", + "prologue": "prolog", + "prologues": "prologs", + "propagandise": "propagandize", + "propagandised": "propagandized", + "propagandises": "propagandizes", + "propagandising": "propagandizing", + "proselytise": "proselytize", + "proselytised": "proselytized", + "proselytiser": "proselytizer", + "proselytisers": "proselytizers", + "proselytises": "proselytizes", + "proselytising": "proselytizing", + "psychoanalyse": "psychoanalyze", + "psychoanalysed": "psychoanalyzed", + "psychoanalyses": "psychoanalyzes", + "psychoanalysing": "psychoanalyzing", + "publicise": "publicize", + "publicised": "publicized", + "publicises": "publicizes", + "publicising": "publicizing", + "pulverisation": "pulverization", + "pulverise": "pulverize", + "pulverised": "pulverized", + "pulverises": "pulverizes", + "pulverising": "pulverizing", + "pummelled": "pummel", + "pummelling": "pummeled", + "pyjama": "pajama", + "pyjamas": "pajamas", + "pzazz": "pizzazz", + "quarrelled": "quarreled", + "quarrelling": "quarreling", + "radicalise": "radicalize", + "radicalised": "radicalized", + "radicalises": "radicalizes", + "radicalising": "radicalizing", + "rancour": "rancor", + "randomise": "randomize", + "randomised": "randomized", + "randomises": "randomizes", + "randomising": "randomizing", + "rationalisation": "rationalization", + "rationalisations": "rationalizations", + "rationalise": "rationalize", + "rationalised": "rationalized", + "rationalises": "rationalizes", + "rationalising": "rationalizing", + "ravelled": "raveled", + "ravelling": "raveling", + "realisable": "realizable", + "realisation": "realization", + "realisations": "realizations", + "realise": "realize", + "realised": "realized", + "realises": "realizes", + "realising": "realizing", + "recognisable": "recognizable", + "recognisably": "recognizably", + "recognisance": "recognizance", + "recognise": "recognize", + "recognised": "recognized", + "recognises": "recognizes", + "recognising": "recognizing", + "reconnoitre": "reconnoiter", + "reconnoitred": "reconnoitered", + "reconnoitres": "reconnoiters", + "reconnoitring": "reconnoitering", + "refuelled": "refueled", + "refuelling": "refueling", + "regularisation": "regularization", + "regularise": "regularize", + "regularised": "regularized", + "regularises": "regularizes", + "regularising": "regularizing", + "remodelled": "remodeled", + "remodelling": "remodeling", + "remould": "remold", + "remoulded": "remolded", + "remoulding": "remolding", + "remoulds": "remolds", + "reorganisation": "reorganization", + "reorganisations": "reorganizations", + "reorganise": "reorganize", + "reorganised": "reorganized", + "reorganises": "reorganizes", + "reorganising": "reorganizing", + "revelled": "reveled", + "reveller": "reveler", + "revellers": "revelers", + "revelling": "reveling", + "revitalise": "revitalize", + "revitalised": "revitalized", + "revitalises": "revitalizes", + "revitalising": "revitalizing", + "revolutionise": "revolutionize", + "revolutionised": "revolutionized", + "revolutionises": "revolutionizes", + "revolutionising": "revolutionizing", + "rhapsodise": "rhapsodize", + "rhapsodised": "rhapsodized", + "rhapsodises": "rhapsodizes", + "rhapsodising": "rhapsodizing", + "rigour": "rigor", + "rigours": "rigors", + "ritualised": "ritualized", + "rivalled": "rivaled", + "rivalling": "rivaling", + "romanticise": "romanticize", + "romanticised": "romanticized", + "romanticises": "romanticizes", + "romanticising": "romanticizing", + "rumour": "rumor", + "rumoured": "rumored", + "rumours": "rumors", + "sabre": "saber", + "sabres": "sabers", + "saltpetre": "saltpeter", + "sanitise": "sanitize", + "sanitised": "sanitized", + "sanitises": "sanitizes", + "sanitising": "sanitizing", + "satirise": "satirize", + "satirised": "satirized", + "satirises": "satirizes", + "satirising": "satirizing", + "saviour": "savior", + "saviours": "saviors", + "savour": "savor", + "savoured": "savored", + "savouries": "savories", + "savouring": "savoring", + "savours": "savors", + "savoury": "savory", + "scandalise": "scandalize", + "scandalised": "scandalized", + "scandalises": "scandalizes", + "scandalising": "scandalizing", + "sceptic": "skeptic", + "sceptical": "skeptical", + "sceptically": "skeptically", + "scepticism": "skepticism", + "sceptics": "skeptics", + "sceptre": "scepter", + "sceptres": "scepters", + "scrutinise": "scrutinize", + "scrutinised": "scrutinized", + "scrutinises": "scrutinizes", + "scrutinising": "scrutinizing", + "secularisation": "secularization", + "secularise": "secularize", + "secularised": "secularized", + "secularises": "secularizes", + "secularising": "secularizing", + "sensationalise": "sensationalize", + "sensationalised": "sensationalized", + "sensationalises": "sensationalizes", + "sensationalising": "sensationalizing", + "sensitise": "sensitize", + "sensitised": "sensitized", + "sensitises": "sensitizes", + "sensitising": "sensitizing", + "sentimentalise": "sentimentalize", + "sentimentalised": "sentimentalized", + "sentimentalises": "sentimentalizes", + "sentimentalising": "sentimentalizing", + "sepulchre": "sepulcher", + "sepulchres": "sepulchers", + "serialisation": "serialization", + "serialisations": "serializations", + "serialise": "serialize", + "serialised": "serialized", + "serialises": "serializes", + "serialising": "serializing", + "sermonise": "sermonize", + "sermonised": "sermonized", + "sermonises": "sermonizes", + "sermonising": "sermonizing", + "sheikh": "sheik", + "shovelled": "shoveled", + "shovelling": "shoveling", + "shrivelled": "shriveled", + "shrivelling": "shriveling", + "signalise": "signalize", + "signalised": "signalized", + "signalises": "signalizes", + "signalising": "signalizing", + "signalled": "signaled", + "signalling": "signaling", + "smoulder": "smolder", + "smouldered": "smoldered", + "smouldering": "smoldering", + "smoulders": "smolders", + "snivelled": "sniveled", + "snivelling": "sniveling", + "snorkelled": "snorkeled", + "snorkelling": "snorkeling", + "snowplough": "snowplow", + "snowploughs": "snowplow", + "socialisation": "socialization", + "socialise": "socialize", + "socialised": "socialized", + "socialises": "socializes", + "socialising": "socializing", + "sodomise": "sodomize", + "sodomised": "sodomized", + "sodomises": "sodomizes", + "sodomising": "sodomizing", + "solemnise": "solemnize", + "solemnised": "solemnized", + "solemnises": "solemnizes", + "solemnising": "solemnizing", + "sombre": "somber", + "specialisation": "specialization", + "specialisations": "specializations", + "specialise": "specialize", + "specialised": "specialized", + "specialises": "specializes", + "specialising": "specializing", + "spectre": "specter", + "spectres": "specters", + "spiralled": "spiraled", + "spiralling": "spiraling", + "splendour": "splendor", + "splendours": "splendors", + "squirrelled": "squirreled", + "squirrelling": "squirreling", + "stabilisation": "stabilization", + "stabilise": "stabilize", + "stabilised": "stabilized", + "stabiliser": "stabilizer", + "stabilisers": "stabilizers", + "stabilises": "stabilizes", + "stabilising": "stabilizing", + "standardisation": "standardization", + "standardise": "standardize", + "standardised": "standardized", + "standardises": "standardizes", + "standardising": "standardizing", + "stencilled": "stenciled", + "stencilling": "stenciling", + "sterilisation": "sterilization", + "sterilisations": "sterilizations", + "sterilise": "sterilize", + "sterilised": "sterilized", + "steriliser": "sterilizer", + "sterilisers": "sterilizers", + "sterilises": "sterilizes", + "sterilising": "sterilizing", + "stigmatisation": "stigmatization", + "stigmatise": "stigmatize", + "stigmatised": "stigmatized", + "stigmatises": "stigmatizes", + "stigmatising": "stigmatizing", + "storey": "story", + "storeys": "stories", + "subsidisation": "subsidization", + "subsidise": "subsidize", + "subsidised": "subsidized", + "subsidiser": "subsidizer", + "subsidisers": "subsidizers", + "subsidises": "subsidizes", + "subsidising": "subsidizing", + "succour": "succor", + "succoured": "succored", + "succouring": "succoring", + "succours": "succors", + "sulphate": "sulfate", + "sulphates": "sulfates", + "sulphide": "sulfide", + "sulphides": "sulfides", + "sulphur": "sulfur", + "sulphurous": "sulfurous", + "summarise": "summarize", + "summarised": "summarized", + "summarises": "summarizes", + "summarising": "summarizing", + "swivelled": "swiveled", + "swivelling": "swiveling", + "symbolise": "symbolize", + "symbolised": "symbolized", + "symbolises": "symbolizes", + "symbolising": "symbolizing", + "sympathise": "sympathize", + "sympathised": "sympathized", + "sympathiser": "sympathizer", + "sympathisers": "sympathizers", + "sympathises": "sympathizes", + "sympathising": "sympathizing", + "synchronisation": "synchronization", + "synchronise": "synchronize", + "synchronised": "synchronized", + "synchronises": "synchronizes", + "synchronising": "synchronizing", + "synthesise": "synthesize", + "synthesised": "synthesized", + "synthesiser": "synthesizer", + "synthesisers": "synthesizers", + "synthesises": "synthesizes", + "synthesising": "synthesizing", + "syphon": "siphon", + "syphoned": "siphoned", + "syphoning": "siphoning", + "syphons": "siphons", + "systematisation": "systematization", + "systematise": "systematize", + "systematised": "systematized", + "systematises": "systematizes", + "systematising": "systematizing", + "tantalise": "tantalize", + "tantalised": "tantalized", + "tantalises": "tantalizes", + "tantalising": "tantalizing", + "tantalisingly": "tantalizingly", + "tasselled": "tasseled", + "technicolour": "technicolor", + "temporise": "temporize", + "temporised": "temporized", + "temporises": "temporizes", + "temporising": "temporizing", + "tenderise": "tenderize", + "tenderised": "tenderized", + "tenderises": "tenderizes", + "tenderising": "tenderizing", + "terrorise": "terrorize", + "terrorised": "terrorized", + "terrorises": "terrorizes", + "terrorising": "terrorizing", + "theatre": "theater", + "theatregoer": "theatergoer", + "theatregoers": "theatergoers", + "theatres": "theaters", + "theorise": "theorize", + "theorised": "theorized", + "theorises": "theorizes", + "theorising": "theorizing", + "tonne": "ton", + "tonnes": "tons", + "towelled": "toweled", + "towelling": "toweling", + "toxaemia": "toxemia", + "tranquillise": "tranquilize", + "tranquillised": "tranquilized", + "tranquilliser": "tranquilizer", + "tranquillisers": "tranquilizers", + "tranquillises": "tranquilizes", + "tranquillising": "tranquilizing", + "tranquillity": "tranquility", + "tranquillize": "tranquilize", + "tranquillized": "tranquilized", + "tranquillizer": "tranquilizer", + "tranquillizers": "tranquilizers", + "tranquillizes": "tranquilizes", + "tranquillizing": "tranquilizing", + "tranquilly": "tranquility", + "transistorised": "transistorized", + "traumatise": "traumatize", + "traumatised": "traumatized", + "traumatises": "traumatizes", + "traumatising": "traumatizing", + "travelled": "traveled", + "traveller": "traveler", + "travellers": "travelers", + "travelling": "traveling", + "travelog": "travelogue", + "travelogs": "travelogues", + "trialled": "trialed", + "trialling": "trialing", + "tricolour": "tricolor", + "tricolours": "tricolors", + "trivialise": "trivialize", + "trivialised": "trivialized", + "trivialises": "trivializes", + "trivialising": "trivializing", + "tumour": "tumor", + "tumours": "tumors", + "tunnelled": "tunneled", + "tunnelling": "tunneling", + "tyrannise": "tyrannize", + "tyrannised": "tyrannized", + "tyrannises": "tyrannizes", + "tyrannising": "tyrannizing", + "tyre": "tire", + "tyres": "tires", + "unauthorised": "unauthorized", + "uncivilised": "uncivilized", + "underutilised": "underutilized", + "unequalled": "unequaled", + "unfavourable": "unfavorable", + "unfavourably": "unfavorably", + "unionisation": "unionization", + "unionise": "unionize", + "unionised": "unionized", + "unionises": "unionizes", + "unionising": "unionizing", + "unorganised": "unorganized", + "unravelled": "unraveled", + "unravelling": "unraveling", + "unrecognisable": "unrecognizable", + "unrecognised": "unrecognized", + "unrivalled": "unrivaled", + "unsavoury": "unsavory", + "untrammelled": "untrammeled", + "urbanisation": "urbanization", + "urbanise": "urbanize", + "urbanised": "urbanized", + "urbanises": "urbanizes", + "urbanising": "urbanizing", + "utilisable": "utilizable", + "utilisation": "utilization", + "utilise": "utilize", + "utilised": "utilized", + "utilises": "utilizes", + "utilising": "utilizing", + "valour": "valor", + "vandalise": "vandalize", + "vandalised": "vandalized", + "vandalises": "vandalizes", + "vandalising": "vandalizing", + "vaporisation": "vaporization", + "vaporise": "vaporize", + "vaporised": "vaporized", + "vaporises": "vaporizes", + "vaporising": "vaporizing", + "vapour": "vapor", + "vapours": "vapors", + "verbalise": "verbalize", + "verbalised": "verbalized", + "verbalises": "verbalizes", + "verbalising": "verbalizing", + "victimisation": "victimization", + "victimise": "victimize", + "victimised": "victimized", + "victimises": "victimizes", + "victimising": "victimizing", + "videodisc": "videodisk", + "videodiscs": "videodisks", + "vigour": "vigor", + "visualisation": "visualization", + "visualisations": "visualizations", + "visualise": "visualize", + "visualised": "visualized", + "visualises": "visualizes", + "visualising": "visualizing", + "vocalisation": "vocalization", + "vocalisations": "vocalizations", + "vocalise": "vocalize", + "vocalised": "vocalized", + "vocalises": "vocalizes", + "vocalising": "vocalizing", + "vulcanised": "vulcanized", + "vulgarisation": "vulgarization", + "vulgarise": "vulgarize", + "vulgarised": "vulgarized", + "vulgarises": "vulgarizes", + "vulgarising": "vulgarizing", + "waggon": "wagon", + "waggons": "wagons", + "watercolour": "watercolor", + "watercolours": "watercolors", + "weaselled": "weaseled", + "weaselling": "weaseling", + "westernisation": "westernization", + "westernise": "westernize", + "westernised": "westernized", + "westernises": "westernizes", + "westernising": "westernizing", + "womanise": "womanize", + "womanised": "womanized", + "womaniser": "womanizer", + "womanisers": "womanizers", + "womanises": "womanizes", + "womanising": "womanizing", + "woollen": "woolen", + "woollens": "woolens", + "woollies": "woolies", + "woolly": "wooly", + "worshipped": "worshiped", + "worshipping": "worshiping", + "worshipper": "worshiper", + "yodelled": "yodeled", + "yodelling": "yodeling", + "yoghourt": "yogurt", + "yoghourts": "yogurts", + "yoghurt": "yogurt", + "yoghurts": "yogurts", + "mhm": "hmm", + "mm": "hmm", + "mmm": "hmm" +} \ No newline at end of file diff --git a/examples/industrial_data_pretraining/minmo/utils/parse_options.sh b/examples/industrial_data_pretraining/minmo/utils/parse_options.sh new file mode 100755 index 000000000..71fb9e5ea --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/parse_options.sh @@ -0,0 +1,97 @@ +#!/usr/bin/env bash + +# Copyright 2012 Johns Hopkins University (Author: Daniel Povey); +# Arnab Ghoshal, Karel Vesely + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# THIS CODE IS PROVIDED *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED +# WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +# MERCHANTABLITY OR NON-INFRINGEMENT. +# See the Apache 2 License for the specific language governing permissions and +# limitations under the License. + + +# Parse command-line options. +# To be sourced by another script (as in ". parse_options.sh"). +# Option format is: --option-name arg +# and shell variable "option_name" gets set to value "arg." +# The exception is --help, which takes no arguments, but prints the +# $help_message variable (if defined). + + +### +### The --config file options have lower priority to command line +### options, so we need to import them first... +### + +# Now import all the configs specified by command-line, in left-to-right order +for ((argpos=1; argpos<$#; argpos++)); do + if [ "${!argpos}" == "--config" ]; then + argpos_plus1=$((argpos+1)) + config=${!argpos_plus1} + [ ! -r $config ] && echo "$0: missing config '$config'" && exit 1 + . $config # source the config file. + fi +done + + +### +### Now we process the command line options +### +while true; do + [ -z "${1:-}" ] && break; # break if there are no arguments + case "$1" in + # If the enclosing script is called with --help option, print the help + # message and exit. Scripts should put help messages in $help_message + --help|-h) if [ -z "$help_message" ]; then echo "No help found." 1>&2; + else printf "$help_message\n" 1>&2 ; fi; + exit 0 ;; + --*=*) echo "$0: options to scripts must be of the form --name value, got '$1'" + exit 1 ;; + # If the first command-line argument begins with "--" (e.g. --foo-bar), + # then work out the variable name as $name, which will equal "foo_bar". + --*) name=`echo "$1" | sed s/^--// | sed s/-/_/g`; + # Next we test whether the variable in question is undefned-- if so it's + # an invalid option and we die. Note: $0 evaluates to the name of the + # enclosing script. + # The test [ -z ${foo_bar+xxx} ] will return true if the variable foo_bar + # is undefined. We then have to wrap this test inside "eval" because + # foo_bar is itself inside a variable ($name). + eval '[ -z "${'$name'+xxx}" ]' && echo "$0: invalid option $1" 1>&2 && exit 1; + + oldval="`eval echo \\$$name`"; + # Work out whether we seem to be expecting a Boolean argument. + if [ "$oldval" == "true" ] || [ "$oldval" == "false" ]; then + was_bool=true; + else + was_bool=false; + fi + + # Set the variable to the right value-- the escaped quotes make it work if + # the option had spaces, like --cmd "queue.pl -sync y" + eval $name=\"$2\"; + + # Check that Boolean-valued arguments are really Boolean. + if $was_bool && [[ "$2" != "true" && "$2" != "false" ]]; then + echo "$0: expected \"true\" or \"false\": $1 $2" 1>&2 + exit 1; + fi + shift 2; + ;; + *) break; + esac +done + + +# Check for an empty argument to the --cmd option, which can easily occur as a +# result of scripting errors. +[ ! -z "${cmd+xxx}" ] && [ -z "$cmd" ] && echo "$0: empty argument to --cmd option" 1>&2 && exit 1; + + +true; # so this script returns exit code 0. diff --git a/examples/industrial_data_pretraining/minmo/utils/res4char.py b/examples/industrial_data_pretraining/minmo/utils/res4char.py new file mode 100644 index 000000000..42a5cccbb --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/res4char.py @@ -0,0 +1,92 @@ +# -*- coding: utf-8 -*- +#!/usr/bin/python +# Author: weijuan +import sys, re + + +def scoreformat(name, line): + newline = "" + for i in range(0, len(line)): + curr = line[i] + currEn = False + if curr == "": + continue + if curr.upper() >= "A" and curr.upper() <= "Z" or curr == "'": + currEn = True + if i == 0: + newline = newline + curr.lower() + else: + if lastEn == True and currEn == True: + newline = newline + curr.lower() + else: + newline = newline + " " + curr.lower() + lastEn = currEn + ret = re.sub("[ ]{1,}", " ", newline) + ret = ret + ret = name + "\t" + ret + return ret + + +def recoformat(line): + newline = "" + en_flag = 0 # 0: no-english 1 : english 2: former + for i in range(0, len(line)): + word = line[i] + if ord(word) == 32: + if en_flag == 0: + continue + else: + en_flag = 0 + newline += " " + if (word >= "\u4e00" and word <= "\u9fa5") or (word >= "\u0030" and word <= "\u0039"): + if en_flag == 1: + newline += " " + word + else: + newline += word + en_flag = 0 + elif ( + (word >= "\u0041" and word <= "\u005a") + or (word >= "\u0061" and word <= "\u007a") + or word == "'" + ): + if en_flag == 0: + newline += " " + word + else: + newline += word + en_flag = 1 + else: + newline += " " + newline = newline + newline = re.sub("[ ]{1,}", " ", newline) + newline = newline.strip() + newline = newline + return newline + + +if __name__ == "__main__": + if len(sys.argv[1:]) < 1: + sys.stderr.write("Usage:\n .py reco.result\n") + sys.stderr.write(" reco.result: idrecoresult; delimiter: \\t , blank \n") + sys.exit(1) + f = open(sys.argv[1]) + for line in f.readlines(): + if not line: + continue + line = line.rstrip() + if "\t" in line: + tmp = line.split("\t") + elif "," in line: + tmp = line.split(",", 1) + else: + tmp = line.split(" ", 1) + if len(tmp) < 2: + continue + name = tmp[0] + content = tmp[1] + name = re.sub("\.pcm$", "", name) + name = re.sub("\.wav$", "", name) + # name=re.sub("wav[0-9]{3,}_[0-9]{4,}_","",name) + content = recoformat(content) + content = scoreformat(name, content) + print(content) + f.close() diff --git a/examples/industrial_data_pretraining/minmo/utils/score.py b/examples/industrial_data_pretraining/minmo/utils/score.py new file mode 100644 index 000000000..a6c673bec --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/score.py @@ -0,0 +1,125 @@ +import sys +from sklearn.metrics import classification_report + + +aed_ref = sys.argv[1] +aed_hyp = sys.argv[2] +select_emo = sys.argv[3] +# select_emo = "happy,sad,angry,neutral" #参与打分的情感 +emo_list = select_emo.split(",") + +ref, hyp = {}, {} +all_key = set() +mix_map = {} + +with open(aed_ref, "r") as f: + for line in f: + id, event = line.strip().split(" ", 1)[0], line.strip().split(" ", 1)[1] + ref[id] = event + +with open(aed_hyp, "r") as f: + for line in f: + if len(line.strip().split(" ", 1)) != 2: + continue + id, event = line.strip().split(" ", 1) + hyp[id] = event + + +ref_list = [] +hyp_list = [] + + +emo_dict = {} + + +def get_emo(s): + if "Happy" in s or "开心" in s: + return "happy" + if "Sad" in s or "难过" in s: + return "sad" + if "Angry" in s or "生气" in s: + return "angry" + if "Neutral" in s or "平静" in s: + return "neutral" + if "Fearful" in s or "害怕" in s: + return "fearful" + if "Surprised" in s or "吃惊" in s: + return "surprised" + if "Disgusted" in s or "厌恶" in s: + return "disgusted" + return "other" + + +for key in hyp: + if key not in ref: + continue + + ref_emo = get_emo(ref[key]) + hyp_emo = get_emo(hyp[key]) + + print(key, ref_emo, hyp_emo) + + if get_emo(ref[key]) not in emo_list or get_emo(hyp[key]) not in select_emo: + continue + + ref_list.append(get_emo(ref[key])) + hyp_list.append(get_emo(hyp[key])) + + if ref_emo not in emo_dict: + emo_dict[ref_emo] = {} + if hyp_emo not in emo_dict[ref_emo]: + emo_dict[ref_emo][hyp_emo] = 0 + emo_dict[ref_emo][hyp_emo] += 1 + + +head_line = "*" * 10 +hyp_emo_set = set(hyp_list) + +for hyp_emo in hyp_emo_set: + head_line += f"\t{hyp_emo:10}" +print(head_line) +for ref_emo in emo_list: + if ref_emo not in emo_dict: + continue + show_str = [f"{ref_emo:10}"] + for hyp_emo in hyp_emo_set: + hyp_num = f"{emo_dict[ref_emo].get(hyp_emo, 0)}" + show_str.append(f"\t{hyp_num:10}") + print("".join(show_str)) + +if len(ref_list) > 0: + print(classification_report(ref_list, hyp_list, digits=3)) + +# 使用方法: +# >>> python3 score.py path/to/ref path/to/hyp happy,sad,angry,neutral + +# # ref和hyp格式与wav.scp相似: wav_id emotion +# # wav_1 happy +# # wav_2 sad + +# 结果示例, +# ********** angry disgusted fearful happy neutral sad surprised +# angry 138 3 1 54 88 20 15 +# disgusted 25 2 1 16 16 4 3 +# fearful 12 0 1 12 16 6 2 +# happy 48 1 0 208 79 18 8 +# neutral 147 2 12 298 590 80 17 +# sad 41 1 1 32 52 61 9 +# surprised 53 1 2 54 85 8 44 +# happy: 208/353 recall: 0.589235 acc: 0.351351 +# sad: 61/186 recall: 0.327957 acc: 0.340782 +# angry: 138/300 recall: 0.460000 acc: 0.368984 +# neutral: 590/1115 recall: 0.529148 acc: 0.729295 +# UA:0.476585, WA: 0.510235 + +# ========== +# precision recall f1-score support + +# angry 0.369 0.460 0.409 300 +# happy 0.351 0.589 0.440 353 +# neutral 0.729 0.529 0.613 1115 +# sad 0.341 0.328 0.334 186 + +# accuracy 0.510 1954 +# macro avg 0.448 0.477 0.449 1954 <--------以这两行为准 +# weighted avg 0.569 0.510 0.524 1954 <--------以这两行为准 diff --git a/examples/industrial_data_pretraining/minmo/utils/split_merge_res.py b/examples/industrial_data_pretraining/minmo/utils/split_merge_res.py new file mode 100644 index 000000000..83573d8a0 --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/split_merge_res.py @@ -0,0 +1,34 @@ +import sys + + +input_file = sys.argv[1] +key_file = sys.argv[2] +output_file = sys.argv[3] + + +key_dct = {} +with open(key_file, "r") as f: + for line in f: + content = line.strip().split(" ", 1) + if len(content) == 2: + key, trans = content[0], content[1] + else: + key = content[0] + trans = "" + key_dct[key] = trans + +fout = open(output_file, "w") + +repeat_lst = [] + +with open(input_file, "r") as f: + for line in f: + content = line.strip().split(" ", 1) + if len(content) == 2: + key, trans = content[0], content[1] + else: + key = content[0] + trans = "" + if key in key_dct and key not in repeat_lst: + repeat_lst.append(key) + fout.writelines(key + " " + trans + "\n") diff --git a/examples/industrial_data_pretraining/minmo/utils/text_normalize/add_space_for_zh.py b/examples/industrial_data_pretraining/minmo/utils/text_normalize/add_space_for_zh.py new file mode 100644 index 000000000..5b99fee32 --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/text_normalize/add_space_for_zh.py @@ -0,0 +1,18 @@ +import sys + +input_file = sys.argv[1] +output_file = sys.argv[2] + +with open(input_file) as f: + lines = f.readlines() + +with open(output_file, "w") as wf: + for line in lines: + parts = line.strip().split(maxsplit=1) + if len(parts) == 2: + key, text = parts + else: + key, parts = parts[0], " " + text = [t for t in text.replace(" ", "")] + text = " ".join(text) + wf.write(key + " " + text + "\n") diff --git a/examples/industrial_data_pretraining/minmo/utils/text_normalize/whisper_basic_normalize.py b/examples/industrial_data_pretraining/minmo/utils/text_normalize/whisper_basic_normalize.py new file mode 100644 index 000000000..f1782755c --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/text_normalize/whisper_basic_normalize.py @@ -0,0 +1,24 @@ +import sys +from whisper_normalizer.basic import BasicTextNormalizer + +basic_normalizer = BasicTextNormalizer() + + +def normalize_text(srcfn, dstfn): + with open(srcfn, "r") as f_read, open(dstfn, "w") as f_write: + all_lines = f_read.readlines() + for line in all_lines: + line = line.strip() + line_arr = line.split() + if len(line_arr) < 2: + continue + key = line_arr[0] + conts = " ".join(line_arr[1:]) + normalized_conts = basic_normalizer(conts) + f_write.write("{0}\t{1}\n".format(key, normalized_conts)) + + +if __name__ == "__main__": + srcfn = sys.argv[1] + dstfn = sys.argv[2] + normalize_text(srcfn, dstfn) diff --git a/examples/industrial_data_pretraining/minmo/utils/text_normalize/whisper_english_normalize.py b/examples/industrial_data_pretraining/minmo/utils/text_normalize/whisper_english_normalize.py new file mode 100644 index 000000000..cb2650bba --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/text_normalize/whisper_english_normalize.py @@ -0,0 +1,22 @@ +import sys +from whisper_normalizer.english import EnglishTextNormalizer + +english_normalizer = EnglishTextNormalizer() + + +def normalize_text(srcfn, dstfn): + with open(srcfn, "r") as f_read, open(dstfn, "w") as f_write: + all_lines = f_read.readlines() + for line in all_lines: + line = line.strip() + line_arr = line.split() + key = line_arr[0] + conts = " ".join(line_arr[1:]) + normalized_conts = english_normalizer(conts) + f_write.write("{0}\t{1}\n".format(key, normalized_conts)) + + +if __name__ == "__main__": + srcfn = sys.argv[1] + dstfn = sys.argv[2] + normalize_text(srcfn, dstfn) diff --git a/examples/industrial_data_pretraining/minmo/utils/text_normalize/zh_hant2zh_cn_process.py b/examples/industrial_data_pretraining/minmo/utils/text_normalize/zh_hant2zh_cn_process.py new file mode 100644 index 000000000..b8005ebe9 --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/text_normalize/zh_hant2zh_cn_process.py @@ -0,0 +1,32 @@ +import zhconv +import argparse +import codecs + + +def convert_hant2cn(input_file, output_file): + fout = codecs.open(output_file, "w") + with codecs.open(input_file, "r") as fin: + for line in fin: + if "\t" in line: + content = line.strip().split("\t", 1) + else: + content = line.strip().split(" ", 1) + if len(content) == 2: + idx, res = content[0], content[1] + else: + idx = content[0] + res = "" + convert_res = zhconv.convert(res, "zh-cn") + # print(idx, res, convert_res) + fout.writelines(idx + "\t" + convert_res + "\n") + + fout.close() + + +parser = argparse.ArgumentParser(description="manual to this script") +parser.add_argument("--input_file", type=str, default=None) +parser.add_argument("--output_file", type=str, default=None) +args = parser.parse_args() + +if __name__ == "__main__": + convert_hant2cn(args.input_file, args.output_file) diff --git a/examples/industrial_data_pretraining/minmo/utils/whisper_english_normalize.py b/examples/industrial_data_pretraining/minmo/utils/whisper_english_normalize.py new file mode 100644 index 000000000..fc18b32bc --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/whisper_english_normalize.py @@ -0,0 +1,25 @@ +import sys +import os +import re +import string +from whisper_normalizer.english import EnglishTextNormalizer + +english_normalizer = EnglishTextNormalizer() + + +def normalize_text(srcfn, dstfn): + with open(srcfn, "r") as f_read, open(dstfn, "w") as f_write: + all_lines = f_read.readlines() + for line in all_lines: + line = line.strip() + line_arr = line.split() + key = line_arr[0] + conts = " ".join(line_arr[1:]) + normalized_conts = english_normalizer(conts) + f_write.write("{0}\t{1}\n".format(key, normalized_conts)) + + +if __name__ == "__main__": + srcfn = sys.argv[1] + dstfn = sys.argv[2] + normalize_text(srcfn, dstfn) diff --git a/examples/industrial_data_pretraining/minmo/utils/zh_hant2zh_cn_process.py b/examples/industrial_data_pretraining/minmo/utils/zh_hant2zh_cn_process.py new file mode 100644 index 000000000..57abeb02b --- /dev/null +++ b/examples/industrial_data_pretraining/minmo/utils/zh_hant2zh_cn_process.py @@ -0,0 +1,28 @@ +import zhconv +import argparse +import codecs + + +def convert_hant2cn(input_file, output_file): + fout = codecs.open(output_file, "w") + with codecs.open(input_file, "r") as fin: + for line in fin: + content = line.strip().split(" ", 1) + if len(content) == 2: + idx, res = content[0], content[1] + else: + idx = content[0] + res = "" + convert_res = zhconv.convert(res, "zh-cn") + fout.writelines(idx + "\t" + convert_res + "\n") + + fout.close() + + +parser = argparse.ArgumentParser(description="manual to this script") +parser.add_argument("--input_file", type=str, default=None) +parser.add_argument("--output_file", type=str, default=None) +args = parser.parse_args() + +if __name__ == "__main__": + convert_hant2cn(args.input_file, args.output_file) diff --git a/examples/industrial_data_pretraining/sense_voice/demo.py b/examples/industrial_data_pretraining/sense_voice/demo.py index 530399955..786a3df36 100644 --- a/examples/industrial_data_pretraining/sense_voice/demo.py +++ b/examples/industrial_data_pretraining/sense_voice/demo.py @@ -9,6 +9,7 @@ model = AutoModel( model="/Users/zhifu/Downloads/modelscope_models/SenseVoiceModelscope", # vad_model="iic/speech_fsmn_vad_zh-cn-16k-common-pytorch", # vad_kwargs={"max_single_segment_time": 30000}, + device="cuda:0", ) diff --git a/examples/industrial_data_pretraining/sense_voice/demo_ctc.py b/examples/industrial_data_pretraining/sense_voice/demo_ctc.py index a8ba7f941..cc876e354 100644 --- a/examples/industrial_data_pretraining/sense_voice/demo_ctc.py +++ b/examples/industrial_data_pretraining/sense_voice/demo_ctc.py @@ -13,6 +13,7 @@ input_file = ( model = AutoModel( model=model_dir, + device="cuda:0", ) res = model.generate( diff --git a/examples/industrial_data_pretraining/sense_voice/demo_fsmn.py b/examples/industrial_data_pretraining/sense_voice/demo_fsmn.py index ce4bdf8a2..c6abde869 100644 --- a/examples/industrial_data_pretraining/sense_voice/demo_fsmn.py +++ b/examples/industrial_data_pretraining/sense_voice/demo_fsmn.py @@ -9,6 +9,7 @@ model = AutoModel( model="/Users/zhifu/Downloads/modelscope_models/SenseVoiceModelscopeFSMN", vad_model="iic/speech_fsmn_vad_zh-cn-16k-common-pytorch", vad_kwargs={"max_single_segment_time": 30000}, + device="cuda:0", ) diff --git a/funasr/models/llm_asr/model.py b/funasr/models/llm_asr/model.py index c452f286b..9563b412e 100644 --- a/funasr/models/llm_asr/model.py +++ b/funasr/models/llm_asr/model.py @@ -860,7 +860,7 @@ class LLMASR3(LLMASR2): return encoder_out, encoder_out_lens -@tables.register("model_classes", "LLMASR4") +# @tables.register("model_classes", "LLMASR4") class LLMASR4(nn.Module): """ """ @@ -1339,7 +1339,7 @@ class LLMASR4(nn.Module): # audio encoder speech = batch["speech"] - + if len(speech) > 0: if "audio_embedding" in kwargs and "audio_embedding_lens" in kwargs: encoder_out = kwargs["audio_embedding"] @@ -2303,6 +2303,7 @@ class LLMASRXvecSlotTTS(nn.Module): vocoder_conf = kwargs.get("vocoder_conf", None) self.vocoder = self.build_vocoder(name=vocoder_name, conf=vocoder_conf).to(torch.float32) import lameenc + self.mp3_encoder = lameenc.Encoder() self.mp3_encoder.set_bit_rate(128) self.mp3_encoder.set_in_sample_rate(22050) @@ -3023,7 +3024,8 @@ class LLMASRXvecSlotTTS(nn.Module): @torch.no_grad() def generate_speech_one_step( self, - text: str, preds: str, + text: str, + preds: str, last_t_size, llm_cur_kv_cache, llm_cur_kv_cache_len, @@ -3051,14 +3053,14 @@ class LLMASRXvecSlotTTS(nn.Module): preds = self.split_characters_and_words(normed_preds[:str_idx]) idx = len(preds) preds.append(normed_preds[str_idx]) - preds.extend(self.split_characters_and_words(normed_preds[str_idx+1:])) + preds.extend(self.split_characters_and_words(normed_preds[str_idx + 1 :])) break _text = f"<|endofprompt|><|sil|>{text+normed_preds}" + ("<|sil|>" if is_last else "") para_end = False if idx > -1 and not is_last: - pre_part = "".join(preds[:idx+1]) - if len(self.tts_tokenizer_warpper(text+pre_part)) >= para_phone_len: + pre_part = "".join(preds[: idx + 1]) + if len(self.tts_tokenizer_warpper(text + pre_part)) >= para_phone_len: _text = f"<|endofprompt|><|sil|>{text+pre_part}<|sil|>" para_end = True @@ -3109,7 +3111,7 @@ class LLMASRXvecSlotTTS(nn.Module): last_t_size = t_size if para_end: - text = "".join(preds[idx + 1:]) + text = "".join(preds[idx + 1 :]) last_t_size = 0 prompt_token, prompt_audio = [None, None], [None, None] wav = torch.cat([wav, torch.zeros([1, 2205]).to(wav)], dim=1) @@ -3121,17 +3123,18 @@ class LLMASRXvecSlotTTS(nn.Module): @torch.no_grad() def simple_generate_speech_one_step( - self, - text: str, preds: str, - last_t_size, - llm_cur_kv_cache, - llm_cur_kv_cache_len, - prompt_token, - prompt_audio, - tts_text_chunk_size, - chunk_idx, - is_last, - para_phone_len=200, + self, + text: str, + preds: str, + last_t_size, + llm_cur_kv_cache, + llm_cur_kv_cache_len, + prompt_token, + prompt_audio, + tts_text_chunk_size, + chunk_idx, + is_last, + para_phone_len=200, ): device = llm_cur_kv_cache.device _text = f"<|endofprompt|><|sil|>{text}" + ("<|sil|>" if is_last else "") @@ -3194,6 +3197,7 @@ class LLMASRXvecSlotTTS(nn.Module): if is_last: mp3_data += self.mp3_encoder.flush() import lameenc + self.mp3_encoder = lameenc.Encoder() self.mp3_encoder.set_bit_rate(128) self.mp3_encoder.set_in_sample_rate(22050) @@ -3227,7 +3231,8 @@ class LLMASRXvecSlotTTS(nn.Module): # new_text = new_text + _resp rt_value, states = self.generate_speech_one_step( - new_text, _resp, + new_text, + _resp, last_t_size, llm_cur_kv_cache, llm_cur_kv_cache_len, @@ -3288,7 +3293,8 @@ class LLMASRXvecSlotTTS(nn.Module): # new_text = new_text + preds with torch.cuda.amp.autocast(enabled=False, dtype=torch.float32): rt_value, states_ret = self.generate_speech_one_step( - new_text, preds, + new_text, + preds, last_t_size, llm_cur_kv_cache, llm_cur_kv_cache_len, @@ -3311,14 +3317,14 @@ class LLMASRXvecSlotTTS(nn.Module): return cur_token, feat, wav def simple_streaming_generate_speech( - self, - preds, - states, - llm_cur_kv_cache, - llm_cur_kv_cache_len, - is_last=False, - text_chunk_size=8, - format="mp3", + self, + preds, + states, + llm_cur_kv_cache, + llm_cur_kv_cache_len, + is_last=False, + text_chunk_size=8, + format="mp3", ): new_text, last_t_size, prompt_token, prompt_audio, chunk_idx = ( @@ -3331,7 +3337,8 @@ class LLMASRXvecSlotTTS(nn.Module): # new_text = new_text + preds with torch.cuda.amp.autocast(enabled=False, dtype=torch.float32): rt_value, states_ret = self.simple_generate_speech_one_step( - preds, "", + preds, + "", last_t_size, llm_cur_kv_cache, llm_cur_kv_cache_len, diff --git a/funasr/models/minmo/model.py b/funasr/models/minmo/model.py index 7c8053956..837e7224d 100644 --- a/funasr/models/minmo/model.py +++ b/funasr/models/minmo/model.py @@ -691,3 +691,637 @@ class LayerNorm(nn.LayerNorm): self.eps, ) return output.type_as(input) + + +@tables.register("model_classes", "LLMASR4") +@tables.register("model_classes", "MinMo_S2T") +class MinMo_S2T(nn.Module): + """ """ + + def __init__( + self, + audio_encoder: str = None, + audio_encoder_conf: dict = None, + audio_adaptor: str = None, + audio_adaptor_conf: dict = None, + llm: str = None, + llm_conf: dict = None, + input_size: int = 80, + length_normalized_loss: bool = False, + **kwargs, + ): + + super().__init__() + + # audio encoder + hub = audio_encoder_conf.get("hub", None) + self.audio_encoder_activation_checkpoint = audio_encoder_conf.get( + "activation_checkpoint", False + ) + if hub == "ms": + from funasr import AutoModel + + model = AutoModel(model=audio_encoder, model_revision="master") + audio_encoder_output_size = ( + model.model.encoder_output_size + if hasattr(model.model, "encoder_output_size") + else -1 + ) + + audio_encoder = ( + model.model.model.encoder if hasattr(model.model, "model") else model.model.encoder + ) + + # self.frontend = frontend + + elif hub == "hf": + pass + else: + encoder_class = tables.encoder_classes.get(audio_encoder) + audio_encoder = encoder_class(input_size=input_size, **audio_encoder_conf) + audio_encoder_output_size = audio_encoder.output_size() + freeze = audio_encoder_conf.get("freeze", True) + freeze_layer_num = int(audio_encoder_conf.get("freeze_layer_num", -1)) + # if freeze_layer_num > 0: + # freeze_layer_num = range(freeze_layer_num) + + if freeze: + for name, param in audio_encoder.named_parameters(): + if freeze_layer_num > 0: + idx = re.search(r"\.\d+\.", name) + if idx is not None: + beg, end = idx.regs[0] + layer_id = int(name[beg + 1 : end - 1]) + if layer_id < freeze_layer_num: + param.requires_grad = False + elif "ln_post." not in name: + param.requires_grad = False + else: + param.requires_grad = False + + audio_encoder.eval() + + self.audio_encoder = audio_encoder + + # llm + self.llm = None + + from transformers import AutoModelForCausalLM, AutoTokenizer, AutoConfig + + init_param_path = llm_conf.get("init_param_path", "vicuna-7b-v1.5") + llm_load_kwargs = llm_conf.get("load_kwargs", {}) + + if not llm_conf.get("low_cpu", False): + model = AutoModelForCausalLM.from_pretrained( + init_param_path, + load_in_8bit=None, + device_map=None, + use_cache=None, + **llm_load_kwargs, + ) + else: + import os + + if int(os.environ.get("RANK", 0)) == 0: + model = AutoModelForCausalLM.from_pretrained( + init_param_path, + load_in_8bit=None, + device_map="cpu", + use_cache=None, + **llm_load_kwargs, + ) + else: + llm_config = AutoConfig.from_pretrained(init_param_path) + model = AutoModelForCausalLM.from_config(llm_config) + + freeze = llm_conf.get("freeze", True) + if freeze: + for name, param in model.named_parameters(): + param.requires_grad = False + model.eval() + + logging.info(f"use_lora: {llm_conf.get('use_lora', False)}") + if llm_conf.get("use_lora", False): + from omegaconf import OmegaConf, DictConfig + + lora_conf = llm_conf.get("lora_conf", {}) + if isinstance(lora_conf, (OmegaConf, DictConfig)): + lora_conf = OmegaConf.to_container(lora_conf, resolve=True) + from peft import get_peft_model, LoraConfig, TaskType, PeftConfig, PeftModel + + lora_init_param_path = lora_conf.get("init_param_path", None) + if lora_init_param_path is not None: + logging.info(f"lora_init_param_path: {lora_init_param_path}") + model = PeftModel.from_pretrained(model, lora_init_param_path) + for name, param in model.named_parameters(): + if not lora_conf.get("freeze_lora", False): + if "lora_" in name: + param.requires_grad = True + else: + peft_config = LoraConfig(**lora_conf) + model = get_peft_model(model, peft_config) + + model.print_trainable_parameters() + + if llm_conf.get("activation_checkpoint", False): + model.gradient_checkpointing_enable() + + self.llm_dtype = llm_conf.get("llm_dtype", "fp32") + self.llm = model.to(dtype_map[self.llm_dtype]) + llm_dim = model.get_input_embeddings().weight.shape[-1] + + # adaptor + adaptor_class = tables.adaptor_classes.get(audio_adaptor) + if audio_encoder_output_size > 0: + audio_adaptor_conf["encoder_dim"] = audio_encoder_output_size + audio_adaptor_conf["llm_dim"] = llm_dim + audio_adaptor = adaptor_class(**audio_adaptor_conf) + init_param_path = audio_adaptor_conf.get("init_param_path", None) + if init_param_path is not None: + src_state = torch.load(init_param_path, map_location="cpu") + flag = audio_adaptor.load_state_dict(src_state, strict=False) + logging.info(f"Loading audio_adaptor ckpt: {init_param_path}, status: {flag}") + freeze = audio_adaptor_conf.get("freeze", False) + if freeze: + for name, param in audio_adaptor.named_parameters(): + param.requires_grad = False + audio_adaptor.eval() + + self.audio_adaptor = audio_adaptor + + self.error_calculator = None + + self.length_normalized_loss = length_normalized_loss + self.beam_search = None + import os + + rank = int(os.environ.get("RANK", 0)) + logging.info(f"rank: {rank}, model is builded.") + + def forward( + self, + speech: torch.Tensor = None, + speech_lengths: torch.Tensor = None, + input_ids: torch.Tensor = None, + attention_mask: torch.Tensor = None, + labels_ids: torch.Tensor = None, + fbank_beg: torch.Tensor = None, + fbank_mask: torch.Tensor = None, + **kwargs, + ): + """Encoder + Decoder + Calc loss + Args: + speech: (Batch, Length, ...) + speech_lengths: (Batch, ) + text: (Batch, Length) + text_lengths: (Batch,) + """ + # import pdb + # + # pdb.set_trace() + batch_size, token_num = input_ids.shape + stats = {} + input_ids[input_ids < 0] = 0 + inputs_embeds = self.llm.model.get_input_embeddings()(input_ids) + if speech is not None: + if len(speech_lengths.size()) > 1: + speech_lengths = speech_lengths[:, 0] + + batch_size_speech, frames, _ = speech.shape + + # audio encoder + if self.audio_encoder_activation_checkpoint: + from torch.utils.checkpoint import checkpoint + + encoder_out, encoder_out_lens = checkpoint( + self.encode, speech, speech_lengths, use_reentrant=False + ) + else: + encoder_out, encoder_out_lens = self.encode(speech, speech_lengths) + + # audio_adaptor + encoder_out, encoder_out_lens = self.audio_adaptor(encoder_out, encoder_out_lens) + + batch_size, token_num, dims = inputs_embeds.shape + fake_token_len = kwargs.get("fake_token_len") + fake_token_len[fake_token_len < 0] = 0 + fbank_beg[fbank_beg < 0] = 0 + + speech_idx = 0 + for batch_idx in range(batch_size): + + for turn_id in range(fbank_beg.shape[1]): + fbank_beg_idx = fbank_beg[batch_idx, turn_id].item() + if fbank_beg_idx > 0: + speech_token_len = fake_token_len[batch_idx, turn_id] + speech_token = encoder_out[speech_idx, :speech_token_len, :] + + try: + inputs_embeds[ + batch_idx, fbank_beg_idx : fbank_beg_idx + speech_token_len, : + ] = speech_token + except Exception as e: + # + logging.error(f"{str(e)}, {traceback.format_exc()}") + logging.info( + f"batch_idx: {batch_idx}, inputs_embeds: {inputs_embeds.shape}, fbank_beg_idx: {fbank_beg_idx}, speech_token_len: {speech_token_len}, encoder_out: {encoder_out.shape}, encoder_out_lens: {encoder_out_lens}, fake_token_len: {fake_token_len}, speech_lengths: {speech_lengths}" + ) + # import pdb; + # pdb.set_trace() + speech_token_len = encoder_out_lens[speech_idx].item() + speech_token = encoder_out[speech_idx, :speech_token_len, :] + inputs_embeds[ + batch_idx, fbank_beg_idx : fbank_beg_idx + speech_token_len, : + ] = speech_token + + speech_idx += 1 + + stats["batch_size_speech"] = batch_size_speech + stats["batch_size_x_frames"] = frames * batch_size_speech + stats["batch_size_real_frames"] = speech_lengths.sum().item() + stats["padding_frames"] = stats["batch_size_x_frames"] - stats["batch_size_real_frames"] + + with torch.cuda.amp.autocast( + enabled=True if self.llm_dtype != "fp32" else False, dtype=dtype_map[self.llm_dtype] + ): + labels_ids[labels_ids == -1] = -100 + attention_mask[attention_mask < 0] = 0 + model_outputs = self.llm( + inputs_embeds=inputs_embeds.to(dtype_map[self.llm_dtype]), + attention_mask=attention_mask, + labels=labels_ids, + ) + loss = model_outputs.loss + + with torch.no_grad(): + preds = torch.argmax(model_outputs.logits, -1) + acc_att = compute_accuracy(preds[:, :-1], labels_ids[:, 1:], ignore_label=-100) + stats["acc"] = acc_att + + stats["loss"] = torch.clone(loss.detach()) + stats["batch_size"] = batch_size + + stats["batch_size_x_tokens"] = token_num * batch_size + stats["batch_size_real_tokens"] = attention_mask.sum().item() + stats["padding_tokens"] = stats["batch_size_x_tokens"] - stats["batch_size_real_tokens"] + + dialog_turns = (fbank_beg > 0).sum(-1) + dialog_turns_max = torch.max(dialog_turns).int().item() + dialog_turns_avg = dialog_turns.sum().item() / batch_size + stats["dialog_turns_max"] = dialog_turns_max + stats["dialog_turns_avg"] = dialog_turns_avg + + # force_gatherable: to-device and to-tensor if scalar for DataParallel + if self.length_normalized_loss: + batch_size = int((labels_ids > 0 + 1).sum()) + loss, stats, weight = force_gatherable((loss, stats, batch_size), loss.device) + return loss, stats, weight + + def encode(self, speech, speech_lengths): + # audio encoder + encoder_out, encoder_out_lens = self.audio_encoder(speech.permute(0, 2, 1), speech_lengths) + + return encoder_out, encoder_out_lens + + def data_template(self, data): + system, user, assistant = [], [], [] + for i, item in enumerate(data): + role = item["role"] + content = item["content"] + if role == "system": + system.append(content) + elif role == "user": + if "audio" in item: + audio = item["audio"] + content = [content, audio] + user.append(content) + elif role == "assistant": + assistant.append(content) + + system = system * len(user) + + contents = { + "system": system, + "user": user, + "assistant": assistant, + } + + return contents + + def data_load_speech(self, contents: dict, tokenizer, frontend, meta_data={}, **kwargs): + + system = contents["system"] + user = contents["user"] + assistant = contents["assistant"] + pattern = re.compile(r"(<\|startofspeech\|>.*?<\|endofspeech\|>)") + + input_ids, labels, fbank, fbank_lens, fbank_mask, fbank_beg, fake_token_len = ( + [], + [], + [], + [], + [], + [], + [], + ) + input_source_ids = [] + for i, (system_prompt, user_prompt, target_out) in enumerate(zip(system, user, assistant)): + if i >= kwargs.get("multiturn_num_max", 5): + break + if len(input_ids) > kwargs.get("max_token_length", 1500): + break + if isinstance(user_prompt, (list, tuple)): + user_prompt, audio = user_prompt + if i == 0: + if kwargs.get("infer_with_assistant_input", False): + source_input = f"<|im_start|>system\n{system_prompt}<|im_end|>\n<|im_start|>user\n{user_prompt}" + else: + source_input = f"<|im_start|>system\n{system_prompt}<|im_end|>\n<|im_start|>user\n{user_prompt}<|im_end|>\n<|im_start|>assistant\n" + else: + if kwargs.get("infer_with_assistant_input", False): + source_input = f"<|im_start|>user\n{user_prompt}" + else: + source_input = ( + f"<|im_start|>user\n{user_prompt}<|im_end|>\n<|im_start|>assistant\n" + ) + + splits = pattern.split(source_input) + source_ids = [] + fbank_i = [] + fbank_mask_i = [] + fake_token_len_i = 0 + fbank_beg_i = -1 + fbank_lens_i = [] + speech, speech_lengths = [], [] + for k, sub_str in enumerate(splits): + if not sub_str.startswith("<|startofspeech|>"): + sub_token = tokenizer.encode(sub_str) + source_ids += sub_token + fbank_mask_i += [0] * len(sub_token) + else: + sub_str = sub_str.replace("<|startofspeech|>", "").replace( + "<|endofspeech|>", "" + ) + if sub_str.startswith("!"): + sub_str = sub_str[1:] + if sub_str.startswith("!"): # !!: audio sample point + sub_str = audio + try: + time1 = time.perf_counter() + data_src = load_audio_text_image_video(sub_str, fs=frontend.fs) + time2 = time.perf_counter() + meta_data["load_data"] = f"{time2 - time1:0.3f}" + except Exception as e: + logging.error(f"Loading wav failed! {str(e)}, {traceback.format_exc()}") + + speech, speech_lengths = extract_fbank( + data_src, + data_type=kwargs.get("data_type", "sound"), + frontend=frontend, + is_final=True, + ) # speech: [b, T, d] + + time3 = time.perf_counter() + meta_data["extract_feat"] = f"{time3 - time2:0.3f}" + meta_data["batch_data_time"] = ( + speech_lengths.sum().item() + * frontend.frame_shift + * frontend.lfr_n + / 1000 + ) + + if kwargs.get("permute", True): + speech = speech.permute(0, 2, 1) + if speech_lengths > kwargs.get("max_source_length", 5500): + # logging.info( + # f"speech_lengths > max_source_length: {speech_lengths}>{self.max_source_length}, {item}" + # ) + badcase_flag = True + + olens = 1 + (speech_lengths[0].item() - 3 + 2 * 1) // 2 + olens = 1 + (olens - 3 + 2 * 1) // 2 + fake_token_len_i = (olens - 1) // 2 + 1 + fake_token = [0] * fake_token_len_i + fbank_beg_i = len(source_ids) + source_ids += fake_token + fbank_mask_i += [1] * len(fake_token) + + fbank_beg += [fbank_beg_i + len(input_ids)] + fake_token_len += [fake_token_len_i] + source_mask = [-100] * len(source_ids) + target_out = f"{target_out}<|im_end|>" + target_ids = tokenizer.encode(target_out) + input_source_ids = input_ids + source_ids + input_ids += source_ids + target_ids + labels += source_mask + target_ids + fbank_mask += fbank_mask_i + if len(speech) > 0: + fbank.append(speech[0, :, :]) + fbank_lens.append(speech_lengths) + + input_ids = torch.tensor(input_ids, dtype=torch.int64) # [: self.max_token_length] + attention_mask = torch.tensor([1] * len(input_ids), dtype=torch.int32) + labels = torch.tensor(labels, dtype=torch.int64) # [: self.max_token_length] + + # fbank = speech[0, :, :] + # fbank_lens = torch.tensor(fbank_lens, dtype=torch.int32) + fbank_mask = torch.tensor(fbank_mask, dtype=torch.float32) + fbank_beg = torch.tensor(fbank_beg, dtype=torch.int32) + fake_token_len = torch.tensor(fake_token_len, dtype=torch.int32) + source_ids = torch.tensor(input_source_ids, dtype=torch.int64) + target_ids = torch.tensor(target_ids, dtype=torch.int64) + + if len(fbank) > 0: + speech = torch.nn.utils.rnn.pad_sequence(fbank, batch_first=True, padding_value=0.0) + speech_lengths = torch.nn.utils.rnn.pad_sequence( + fbank_lens, batch_first=True, padding_value=-1 + ) + else: + speech = [] + speech_lengths = [] + output = { + "speech": speech, + "speech_lengths": speech_lengths, + "fbank_mask": fbank_mask[None, :], + "fbank_beg": fbank_beg[None,], + "fake_token_len": fake_token_len[None, :], + "input_ids": input_ids[None,], + "attention_mask": attention_mask[None,], + "labels_ids": labels, + "source_ids": source_ids[None, :], + "target_ids": target_ids[None, :], + } + + return output + + def inference_prepare( + self, + data_in, + data_lengths=None, + key: list = None, + tokenizer=None, + frontend=None, + **kwargs, + ): + + meta_data = {} + prompt = kwargs.get("prompt", None) + + if kwargs.get("batch_size", 1) > 1: + raise NotImplementedError("batch decoding is not implemented") + + contents = self.data_template(data_in[0]) + output = self.data_load_speech(contents, tokenizer, frontend, meta_data=meta_data, **kwargs) + batch = to_device(output, kwargs["device"]) + + # audio encoder + speech = batch["speech"] + + if len(speech) > 0: + if "audio_embedding" in kwargs and "audio_embedding_lens" in kwargs: + encoder_out = kwargs["audio_embedding"] + encoder_out_lens = kwargs["audio_embedding_lens"] + else: + speech_lengths = batch["speech_lengths"][:, 0] + # fp16 + if kwargs.get("fp16", False): + speech = speech.to(torch.float16) + elif kwargs.get("bf16", False): + speech = speech.to(torch.bfloat16) + # audio encoder + encoder_out, encoder_out_lens = self.encode(speech, speech_lengths) + + # audio_adaptor + encoder_out, encoder_out_lens = self.audio_adaptor(encoder_out, encoder_out_lens) + + meta_data["audio_adaptor_out"] = encoder_out + meta_data["audio_adaptor_out_lens"] = encoder_out_lens + + input_ids = batch["input_ids"] + source_ids = batch["source_ids"] + fbank_beg = batch["fbank_beg"] + fake_token_len = batch["fake_token_len"] + + if not kwargs.get("tearchforing", False): + input_ids = source_ids + + input_ids[input_ids < 0] = 0 + inputs_embeds = self.llm.model.get_input_embeddings()(input_ids) + + batch_size, token_num, dims = inputs_embeds.shape + + fake_token_len[fake_token_len < 0] = 0 + fbank_beg[fbank_beg < 0] = 0 + + speech_idx = 0 + for batch_idx in range(batch_size): + + for turn_id in range(fbank_beg.shape[1]): + fbank_beg_idx = fbank_beg[batch_idx, turn_id].item() + if fbank_beg_idx > 0: + speech_token_len = fake_token_len[batch_idx, turn_id] + speech_token = encoder_out[speech_idx, :speech_token_len, :] + + try: + inputs_embeds[ + batch_idx, fbank_beg_idx : fbank_beg_idx + speech_token_len, : + ] = speech_token + except Exception as e: + # + logging.error(f"{str(e)}, {traceback.format_exc()}") + logging.info( + f"batch_idx: {batch_idx}, inputs_embeds: {inputs_embeds.shape}, fbank_beg_idx: {fbank_beg_idx}, speech_token_len: {speech_token_len}, encoder_out: {encoder_out.shape}, encoder_out_lens: {encoder_out_lens}, fake_token_len: {fake_token_len}, speech_lengths: {speech_lengths}" + ) + # import pdb; + # pdb.set_trace() + speech_token_len = encoder_out_lens[speech_idx].item() + speech_token = encoder_out[speech_idx, :speech_token_len, :] + inputs_embeds[ + batch_idx, fbank_beg_idx : fbank_beg_idx + speech_token_len, : + ] = speech_token + + speech_idx += 1 + return inputs_embeds, contents, batch, source_ids, meta_data + + def inference( + self, + data_in, + data_lengths=None, + key: list = None, + tokenizer=None, + frontend=None, + **kwargs, + ): + + inputs_embeds, contents, batch, source_ids, meta_data = self.inference_prepare( + data_in, data_lengths, key, tokenizer, frontend, **kwargs + ) + + llm_dtype = kwargs.get("llm_dtype", "fp32") + if llm_dtype == "fp32": + llm_dtype = "fp16" if kwargs.get("fp16", False) else llm_dtype + llm_dtype = "bf16" if kwargs.get("bf16", False) else llm_dtype + + with torch.cuda.amp.autocast( + enabled=True if llm_dtype != "fp32" else False, dtype=dtype_map[llm_dtype] + ): + label = contents["assistant"][-1] + self.llm = self.llm.to(dtype_map[llm_dtype]) + inputs_embeds = inputs_embeds.to(dtype_map[llm_dtype]) + llm_kwargs = kwargs.get("llm_kwargs", {}) + if not kwargs.get("tearchforing", False): + + generated_ids = self.llm.generate( + inputs_embeds=inputs_embeds, + max_new_tokens=kwargs.get("max_length", 512), + **llm_kwargs, + ) + # generated_ids = [ + # output_ids[len(input_id) :] + # for input_id, output_ids in zip(input_ids, generated_ids) + # ] + response = tokenizer.batch_decode( + generated_ids, skip_special_tokens=kwargs.get("skip_special_tokens", True) + )[0] + + loss = None + else: + + labels_ids = batch["labels_ids"] + labels_ids[labels_ids == -1] = -100 + attention_mask = batch.get("attention_mask", None) + # attention_mask = attention_mask.to(dtype_map[llm_dtype]) + model_outputs = self.llm( + inputs_embeds=inputs_embeds, + attention_mask=attention_mask, + labels=labels_ids, + **llm_kwargs, + ) + + preds = torch.argmax(model_outputs.logits, -1)[:, source_ids.shape[1] :] + response = tokenizer.batch_decode( + preds, + add_special_tokens=False, + skip_special_tokens=kwargs.get("skip_special_tokens", True), + )[0] + loss = model_outputs.loss.item() + + ibest_writer = None + if kwargs.get("output_dir") is not None: + if not hasattr(self, "writer"): + self.writer = DatadirWriter(kwargs.get("output_dir")) + ibest_writer = self.writer[f"{0 + 1}best_recog"] + + results = [] + response_clean = re.sub(r"[^\w\s\u3000\u4e00-\u9fff]+", "", response) + result_i = {"key": key[0], "text": response, "text_tn": response_clean, "label": label} + if loss is not None: + result_i["loss"] = loss + results.append(result_i) + + if ibest_writer is not None: + ibest_writer["text"][key[0]] = response.replace("\n", " ") + ibest_writer["label"][key[0]] = label.replace("\n", " ") + ibest_writer["text_tn"][key[0]] = response_clean + + return results, meta_data