modelscope / KAN-TTS

KAN-TTS is a speech-synthesis training framework, please try the demos we have posted at https://modelscope.cn/models?page=1&tasks=text-to-speech
MIT License
489 stars 79 forks source link

subprocess.CalledProcessError: Command '['git', 'rev-parse', 'HEAD']' returned non-zero exit status 128. #66

Open ingale726 opened 1 year ago

ingale726 commented 1 year ago

OS: centos7.9

Python/C++ Version:python3.9 gcc4.8.5

Package Version:pytorch==1.13.1、modelscope==1.5.2、kantts==1.0.0、torchaudio==0.13.1

Model: speech_personal_sambert-hifigan_nsf_tts_zh-cn_pretrain_16k

Command:

from modelscope.metainfo import Trainers
from modelscope.trainers import build_trainer
from modelscope.utils.audio.audio_utils import TtsTrainType

pretrained_model_id = 'damo/speech_personal_sambert-hifigan_nsf_tts_zh-cn_pretrain_16k'

dataset_id = "./output_training_data/"
pretrain_work_dir = "./pretrain_work_dir/"

# 训练信息,用于指定需要训练哪个或哪些模型,这里展示AM和Vocoder模型皆进行训练
# 目前支持训练:TtsTrainType.TRAIN_TYPE_SAMBERT, TtsTrainType.TRAIN_TYPE_VOC
# 训练SAMBERT会以模型最新step作为基础进行finetune
train_info = {
    TtsTrainType.TRAIN_TYPE_SAMBERT: {  # 配置训练AM(sambert)模型
        'train_steps': 202,  # 训练多少个step
        'save_interval_steps': 200,  # 每训练多少个step保存一次checkpoint
        'log_interval': 10  # 每训练多少个step打印一次训练日志
    }
}

# 配置训练参数,指定数据集,临时工作目录和train_info
kwargs = dict(
    model=pretrained_model_id,  # 指定要finetune的模型
    model_revision="v1.0.5",
    work_dir=pretrain_work_dir,  # 指定临时工作目录
    train_dataset=dataset_id,  # 指定数据集id
    train_type=train_info  # 指定要训练类型及参数
)

trainer = build_trainer(Trainers.speech_kantts_trainer,
                        default_args=kwargs)

trainer.train()

ERROR:

(audio) [root@ecs-97b3-0001 /data/audio/kantts]# python train.py
2023-06-20 17:46:00,777 - modelscope - INFO - PyTorch version 1.13.1+cu116 Found.
2023-06-20 17:46:00,778 - modelscope - INFO - Loading ast index from /root/.cache/modelscope/ast_indexer
2023-06-20 17:46:00,804 - modelscope - INFO - Loading done! Current index file version is 1.5.2, with md5 2b4346fea97faefdf1f85f3cdc38c819 and a total number of 860 components indexed
2023-06-20 17:46:02,103 - modelscope - INFO - Use user-specified model revision: v1.0.5
2023-06-20 17:46:02,871 - modelscope - INFO - Use user-specified model revision: v1.0.5
2023-06-20 17:46:04,294 - modelscope - INFO - Set workdir to ./pretrain_work_dir/
2023-06-20 17:46:04,555 - modelscope - INFO - load ./output_training_data/
2023-06-20 17:46:04,704 - modelscope - INFO - Use user-specified model revision: v1.0.5
2023-06-20 17:46:05,905 - modelscope - INFO - am_config=./pretrain_work_dir/orig_model/basemodel_16k/sambert/config.yaml voc_config=./pretrain_work_dir/orig_model/basemodel_16k/hifigan/config.yaml
2023-06-20 17:46:05,905 - modelscope - INFO - audio_config=./pretrain_work_dir/orig_model/basemodel_16k/audio_config_se_16k.yaml
2023-06-20 17:46:05,905 - modelscope - INFO - am_ckpts=OrderedDict([(2400000, './pretrain_work_dir/orig_model/basemodel_16k/sambert/ckpt/checkpoint_2400000.pth')])
2023-06-20 17:46:05,905 - modelscope - INFO - voc_ckpts=OrderedDict([(2400000, './pretrain_work_dir/orig_model/basemodel_16k/hifigan/ckpt/checkpoint_2400000.pth')])
2023-06-20 17:46:05,905 - modelscope - INFO - se_path=./pretrain_work_dir/orig_model/se.npy se_model_path=./pretrain_work_dir/orig_model/basemodel_16k/speaker_embedding/se.onnx
2023-06-20 17:46:05,905 - modelscope - INFO - mvn_path=./pretrain_work_dir/orig_model/mvn.npy
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
Load pinyin_en_mix_dict failed
text.cc: festival_Text_init
fatal: Not a git repository (or any parent up to mount point /data)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
Traceback (most recent call last):
  File "/data/audio/kantts/train.py", line 33, in <module>
    trainer.train()
  File "/data/soft/anaconda3/envs/audio/lib/python3.9/site-packages/modelscope/trainers/audio/tts_trainer.py", line 229, in train
    self.prepare_data()
  File "/data/soft/anaconda3/envs/audio/lib/python3.9/site-packages/modelscope/trainers/audio/tts_trainer.py", line 205, in prepare_data
    self.audio_data_preprocessor(self.raw_dataset_path, self.data_dir,
  File "/data/soft/anaconda3/envs/audio/lib/python3.9/site-packages/modelscope/preprocessors/tts.py", line 36, in __call__
    self.do_data_process(data_dir, output_dir, audio_config_path,
  File "/data/soft/anaconda3/envs/audio/lib/python3.9/site-packages/modelscope/preprocessors/tts.py", line 56, in do_data_process
    process_data(datadir, outputdir, audio_config, speaker_name,
  File "/data/audio/kantts/kantts/preprocess/data_process.py", line 137, in process_data
    config["git_revision_hash"] = get_git_revision_hash()
  File "/data/audio/kantts/kantts/utils/log.py", line 26, in get_git_revision_hash
    return subprocess.check_output(["git", "rev-parse", "HEAD"]).decode("ascii").strip()
  File "/data/soft/anaconda3/envs/audio/lib/python3.9/subprocess.py", line 424, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
  File "/data/soft/anaconda3/envs/audio/lib/python3.9/subprocess.py", line 528, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['git', 'rev-parse', 'HEAD']' returned non-zero exit status 128.
ingale726 commented 1 year ago

我没装kantts,然后 把train.py放到kantts目录下,导致的错误

Xls1994 commented 1 year ago

我没装kantts,然后 把train.py放到kantts目录下,导致的错误

需要用git把他的包给拉下来,原始代码里有对git仓库的校验,虽然不知道这个校验后面有什么作用。 而且你git下拉的用户名需要和执行程序的保持一致才不会报错