Python3.12.3安装espnet遇pkgutil.ImpImporter属性错误求助
问题解决与工具推荐
错误原因分析
你遇到的安装失败,核心是Python 3.12.3 和 numpy 1.23.5 的兼容性冲突。Python 3.12 移除了 pkgutil.ImpImporter 这个旧API,但espnet依赖的numpy 1.23.5在编译时,会调用依赖的旧版setuptools/pkg_resources中的这个已被移除的接口,直接触发AttributeError。
可行解决方案
- 降级Python到3.11版本:espnet依赖的部分包(如numpy<1.24、librosa==0.9.2)对Python3.12的适配还不完善,换成Python3.11后,直接执行
pip install espnet就能正常安装。 - 先安装兼容的旧版setuptools再装espnet:打开命令行依次执行:
pip install setuptools<60 pip install espnet
旧版setuptools还保留对ImpImporter的适配,能绕过这个错误。
新手友好的TTS工具推荐
- Coqui TTS:直接用
pip install TTS安装,自带大量预训练模型,支持多语言,命令行就能快速生成语音,上手门槛低。 - gTTS:安装命令
pip install gTTS,调用谷歌的在线TTS接口,代码简单,适合快速实现基础语音生成,需要联网使用。 - pyttsx3:本地运行的TTS库,无需联网,
pip install pyttsx3即可安装,直接调用系统自带的语音引擎,适合离线场景。
内容的提问来源于stack exchange,提问作者wiznerd games
相关产品推荐
相关产品推荐

