RVC-Boss / GPT-SoVITS

1 min voice data can also be used to train a good TTS model! (few shot voice cloning)
MIT License
34.23k stars 3.93k forks source link

Problem in ASR environment. #26

Closed noob3004 closed 9 months ago

noob3004 commented 9 months ago

Thank you for your outstanding work. I am trying it, I can split audio normally in the new environment created by Readme, but I cannot use ASR. There are something wrong in mindscore?

KeyError: 'funasr-pipeline is not in the pipelines registry group auto-speech-recognition. Please make sure the correct version of ModelScope library is used.'

I would be extremely grateful if you could answer.

Randolph87cb commented 9 months ago

试试用git源安装? funasr 1.0.0 modelscope 1.9.4

https://github.com/modelscope/modelscope.git https://github.com/alibaba/FunASR.git

git clone xxx cd xxx pip install -e ./

noob3004 commented 9 months ago

试试用git源安装? funasr 1.0.0 d:\workspace\gpt-sovits\venv\scripts\funasr modelscope 1.9.4 d:\workspace\gpt-sovits\venv\scripts\modelscope\package

https://github.com/modelscope/modelscope.git https://github.com/alibaba/FunASR.git

git clone xxx cd xxx pip install -e ./

感谢回复,估计就是作者所言版本不一接口有变化了。

mrhan1993 commented 9 months ago

如果没有用,可以试下我的办法: 将 tools\damo_asr\cmd-asr.py 文件中的

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='tools/damo_asr/models/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='tools/damo_asr/models/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='tools/damo_asr/models/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

改成

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='damo/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

根据我的研究,原因是 git clone 的那几个模型的配置文件和它自动下载的内容不一样

RVC-Boss commented 9 months ago

@mrhan1993 国外用户下载modelscope速度咋样

这个写法是整合包写法,照顾网不好的用户的,老版readme也写了下载方式https://github.com/RVC-Boss/GPT-SoVITS/tree/3b1ba91e30c7aff204191fee10bff2719b0adb1e

RVC-Boss commented 9 months ago

我把readme完善了。当然大家也可以按照@mrhan1993提供的方法自己手工修改这个路径自动下载modelscope模型。

mrhan1993 commented 9 months ago

@RVC-Boss 国外 modelscope 这还真不知道。不过我手动下载模型就会报这个 KeyError

lyris commented 8 months ago

如果没有用,可以试下我的办法: 将 tools\damo_asr\cmd-asr.py 文件中的

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='tools/damo_asr/models/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='tools/damo_asr/models/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='tools/damo_asr/models/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

改成

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='damo/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

根据我的研究,原因是 git clone 的那几个模型的配置文件和它自动下载的内容不一样

用 funasr==1.0.0 (commit 37d7764ecf0e8cc1a14f59b8b9cd1c914da8b00 origin/funasr1.0 Sun Jan 21 21:06:52 2024 +0800) modelscope==1.11.0 改 tools\damo_asr\cmd-asr.py 成自动下载仍然报 KeyError: 'funasr-pipeline is not in the pipelines registry group auto-speech-recognition. Please make sure the correct version of ModelScope library is used.'

如果modelscope==1.10.0 错误就变成 ImportError: AutomaticSpeechRecognitionPipeline: cannot import name 'asr_inference_launch' from 'funasr.bin'了 modelscope funasr 好混乱,到目前为止还没有成功

mrhan1993 commented 8 months ago

如果没有用,可以试下我的办法: 将 tools\damo_asr\cmd-asr.py 文件中的

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='tools/damo_asr/models/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='tools/damo_asr/models/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='tools/damo_asr/models/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

改成

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='damo/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

根据我的研究,原因是 git clone 的那几个模型的配置文件和它自动下载的内容不一样

用 funasr==1.0.0 (commit 37d7764ecf0e8cc1a14f59b8b9cd1c914da8b00 origin/funasr1.0 Sun Jan 21 21:06:52 2024 +0800) modelscope==1.11.0 改 tools\damo_asr\cmd-asr.py 成自动下载仍然报 KeyError: 'funasr-pipeline is not in the pipelines registry group auto-speech-recognition. Please make sure the correct version of ModelScope library is used.'

如果modelscope==1.10.0 错误就变成 ImportError: AutomaticSpeechRecognitionPipeline: cannot import name 'asr_inference_launch' from 'funasr.bin'了 modelscope funasr 好混乱,到目前为止还没有成功

加群下整合包吧。这个项目环境报错有点莫名其妙的感觉。

lakerwe commented 8 months ago

如果没有用,可以试下我的办法: 将 tools\damo_asr\cmd-asr.py 文件中的

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='tools/damo_asr/models/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='tools/damo_asr/models/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='tools/damo_asr/models/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

改成

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='damo/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

根据我的研究,原因是 git clone 的那几个模型的配置文件和它自动下载的内容不一样

用 funasr==1.0.0 (commit 37d7764ecf0e8cc1a14f59b8b9cd1c914da8b00 origin/funasr1.0 Sun Jan 21 21:06:52 2024 +0800) modelscope==1.11.0 改 tools\damo_asr\cmd-asr.py 成自动下载仍然报 KeyError: 'funasr-pipeline is not in the pipelines registry group auto-speech-recognition. Please make sure the correct version of ModelScope library is used.' 如果modelscope==1.10.0 错误就变成 ImportError: AutomaticSpeechRecognitionPipeline: cannot import name 'asr_inference_launch' from 'funasr.bin'了 modelscope funasr 好混乱,到目前为止还没有成功

加群下整合包吧。这个项目环境报错有点莫名其妙的感觉。

请问群在哪里加呢?

mrhan1993 commented 8 months ago

@lakerwe B站视频置顶评论里有 BV12g4y1m7Uw

potatoker commented 8 months ago

如果没有用,可以试下我的办法: 将 tools\damo_asr\cmd-asr.py 文件中的

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='tools/damo_asr/models/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='tools/damo_asr/models/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='tools/damo_asr/models/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

改成

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='damo/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

根据我的研究,原因是 git clone 的那几个模型的配置文件和它自动下载的内容不一样

请教下,没太看懂这么改能解决这个问题的原因是? 而且现在版本的这段代码是:

path_asr='tools/damo_asr/models/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch'
path_vad='tools/damo_asr/models/speech_fsmn_vad_zh-cn-16k-common-pytorch'
path_punc='tools/damo_asr/models/punc_ct-transformer_zh-cn-common-vocab272727-pytorch'
path_asr=path_asr if os.path.exists(path_asr)else "damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch"
path_vad=path_vad if os.path.exists(path_vad)else "damo/speech_fsmn_vad_zh-cn-16k-common-pytorch"
path_punc=path_punc if os.path.exists(path_punc)else "damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch"
inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model=path_asr,
    vad_model=path_vad,
    punc_model=path_punc,
)

看起来是为了兼容之前放错的目录没什么问题,路径问题上手动下载到这个目录也是按照这个readme操作的。单仍然有KeyError: 'funasr-pipeline is not in the pipelines registry group auto-speech-recognition. Please make sure the correct version of ModelScope library is used.'这个问题,看有的同学说要降级:

pip install modelscope==1.10.0
pip install funasr==0.8.7

我这里降级了但仍然报这个错误。

veruslana commented 8 months ago

如果没有用,可以试下我的办法: 将 tools\damo_asr\cmd-asr.py 文件中的

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='tools/damo_asr/models/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='tools/damo_asr/models/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='tools/damo_asr/models/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

改成

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='damo/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

根据我的研究,原因是 git clone 的那几个模型的配置文件和它自动下载的内容不一样

请教下,没太看懂这么改能解决这个问题的原因是? 而且现在版本的这段代码是:

path_asr='tools/damo_asr/models/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch'
path_vad='tools/damo_asr/models/speech_fsmn_vad_zh-cn-16k-common-pytorch'
path_punc='tools/damo_asr/models/punc_ct-transformer_zh-cn-common-vocab272727-pytorch'
path_asr=path_asr if os.path.exists(path_asr)else "damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch"
path_vad=path_vad if os.path.exists(path_vad)else "damo/speech_fsmn_vad_zh-cn-16k-common-pytorch"
path_punc=path_punc if os.path.exists(path_punc)else "damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch"
inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model=path_asr,
    vad_model=path_vad,
    punc_model=path_punc,
)

看起来是为了兼容之前放错的目录没什么问题,路径问题上手动下载到这个目录也是按照这个readme操作的。单仍然有KeyError: 'funasr-pipeline is not in the pipelines registry group auto-speech-recognition. Please make sure the correct version of ModelScope library is used.'这个问题,看有的同学说要降级:

pip install modelscope==1.10.0
pip install funasr==0.8.7

我这里降级了但仍然报这个错误。

这边似乎解决了。 mrhan1993的说法是正解。modelscope自动下载的可以用。手动git clone的会遇到问题。

解决方案1: 删除手动下载的文件。代码会自动下载需要的模型。

解决方案2: 用mrhan1993提供的这段代码自动下载模型到cache目录。然后再copy到tools/damo_asr/models/目录下。后面就可以直接本地加载了。

path_asr="damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch" path_vad="damo/speech_fsmn_vad_zh-cn-16k-common-pytorch" path_punc="damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch"

inference_pipeline = pipeline( task=Tasks.auto_speech_recognition, model=path_asr, vad_model=path_vad, punc_model=path_punc, )

potatoker commented 8 months ago

如果没有用,可以试下我的办法: 将 tools\damo_asr\cmd-asr.py 文件中的

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='tools/damo_asr/models/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='tools/damo_asr/models/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='tools/damo_asr/models/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

改成

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='damo/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

根据我的研究,原因是 git clone 的那几个模型的配置文件和它自动下载的内容不一样

请教下,没太看懂这么改能解决这个问题的原因是? 而且现在版本的这段代码是:

path_asr='tools/damo_asr/models/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch'
path_vad='tools/damo_asr/models/speech_fsmn_vad_zh-cn-16k-common-pytorch'
path_punc='tools/damo_asr/models/punc_ct-transformer_zh-cn-common-vocab272727-pytorch'
path_asr=path_asr if os.path.exists(path_asr)else "damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch"
path_vad=path_vad if os.path.exists(path_vad)else "damo/speech_fsmn_vad_zh-cn-16k-common-pytorch"
path_punc=path_punc if os.path.exists(path_punc)else "damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch"
inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model=path_asr,
    vad_model=path_vad,
    punc_model=path_punc,
)

看起来是为了兼容之前放错的目录没什么问题,路径问题上手动下载到这个目录也是按照这个readme操作的。单仍然有KeyError: 'funasr-pipeline is not in the pipelines registry group auto-speech-recognition. Please make sure the correct version of ModelScope library is used.'这个问题,看有的同学说要降级:

pip install modelscope==1.10.0
pip install funasr==0.8.7

我这里降级了但仍然报这个错误。

这边似乎解决了。 mrhan1993的说法是正解。modelscope自动下载的可以用。手动git clone的会遇到问题。

解决方案1: 删除手动下载的文件。代码会自动下载需要的模型。

解决方案2: 用mrhan1993提供的这段代码自动下载模型到cache目录。然后再copy到tools/damo_asr/models/目录下。后面就可以直接本地加载了。

path_asr="damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch" path_vad="damo/speech_fsmn_vad_zh-cn-16k-common-pytorch" path_punc="damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch"

inference_pipeline = pipeline( task=Tasks.auto_speech_recognition, model=path_asr, vad_model=path_vad, punc_model=path_punc, )

明白了,非常感谢

LauraGPT commented 8 months ago

https://github.com/RVC-Boss/GPT-SoVITS/issues/194#issuecomment-1910205929